-7

以下のコードを見てください。

2 つの Q があります。

このタイプのオブジェクトをロックに使用する利点は何ですか?

2 番目の q、コードがまだ//--------この領域にある間にバッファを操作できますか?

private list<byte> buffer;
.
.
.

lock(buffer)
{
  //--------
}
4

2 に答える 2

1

このタイプのオブジェクトを使用してロックすることの利点は何ですか?

特定のタイプのロックオブジェクトに利点があるのはなぜですか?マニュアルに記載されているように:

ベストプラクティスは、ロックオンするプライベートオブジェクト、またはすべてのインスタンスに共通のデータを保護するプライベート静的オブジェクト変数を定義することです。


コードがまだ//--------この領域にある間にバッファを操作できますか?

はい、同じスレッドからlock()ステートメントが発行されました。他のスレッドはそこで待機する必要があります。

于 2013-03-06T13:56:37.557 に答える
1

ロックは、マルチスレッド環境でオブジェクトへの複数アクセスを防ぐために使用されます。実際には、ロックは .NET フレームワークの Monitor クラスの実装です。

于 2013-03-06T13:50:44.720 に答える