2013-03-06 80 views
-7

請看下面的代碼。同步對象

我有兩個QS。

使用這種類型的對象鎖定的優點是什麼?

第二Q,I可以操縱緩衝器而代碼仍處於// --------這個區域?

private list<byte> buffer; 
. 
. 
. 

lock(buffer) 
{ 
    //-------- 
} 
+0

相比優勢是什麼? – Oded 2013-03-06 13:50:43

+0

這裏沒有問題。你的線程在哪裏? – leppie 2013-03-06 13:50:46

+1

請更新您的標題與您的具體問題。你可以閱讀[FAQ]和[問] – 2013-03-06 13:50:49

回答

1

使用這種類型的對象鎖定的優點是什麼?

爲什麼特定類型的鎖定對象會有優勢?正如manual所述:

最佳做法是定義要鎖定的私有對象或私有靜態對象變量以保護所有實例的公共數據。


我可以操縱的緩衝,同時代碼仍處於// --------這個區域?

是的,從同一個線程發出lock()聲明。其他線程將不得不在那裏等待。

1

鎖用於防止在多線程環境中多次訪問對象。 實際上,鎖是.NET框架中監視器類的實現