2017-03-05 66 views

回答

2

我不太確定問題是什麼 - 您發佈的代碼只是一個索引器屬性。在該屬性的主體中,您可以鎖定與其他任何屬性或方法中相同的對象。

class a 
{ 
    private readonly object _lock = new object(); 
    public bool this[int index] 
    { 
     get 
     { 
      lock (_lock) 
      { 
       return ...; 
      } 
     } 
     set 
     { 
      lock (_lock) 
      { 
       ... = value 
      } 
     } 
    } 

    public string AMethod() 
    { 
     lock (_lock) 
     { 
      return ...; 
     } 
    } 
} 
+0

好吧,由於某種原因,我在印象之下,你可以鎖定一個函數被調用,但它似乎並非如此。這正是我要找的,謝謝。 – BWG

+0

輕微的術語改進:您不能鎖定_properties_,您鎖定_objects_。 – Psi

相關問題