2
Lock引数のオブジェクトの目的は何ですか?ここに例があります:Lock文の引数のオブジェクトの目的
public class TestThreading
{
private System.Object lockThis = new System.Object();
public void Process()
{
lock (lockThis)
{
// Access thread-sensitive resources.
}
}
}
...これはロックボディに何かを渡しますか?引数にobjectがないLock文を使用できないのはなぜですか?
ロックを所有するスレッドとその頻度を記録する変数が必要です。ロック状態。 System.Objectは、これらのすべてを実行するために、一見不十分な種類のオブジェクトですが、可能です。多くのプログラマは、.NET Frameworkがこの種の変数のために専用の型を持たなければならないと主張しています。あなたは1つを作ることができます:パブリッククラスLockState:オブジェクト{}。 –
ありがとうございます。代わりにlock文に "Thread.CurrentThread.ManagedThreadId"を渡すと意味がありますか? – cembo
それは悲惨です。あなたはこれを学ぶほうがいいですか、スレッディングはあなたを生きて食べるでしょう。 –