public void Remove(T item)
{
locker.EnterWriteLock();
try
{
list.Remove(item);
}
}
上記はインスタンスクラスのメソッドです。インスタンスがであるとしましょうmyObject。上記のフラグメントに関して、私の質問はこれです:
スレッド1の呼び出しmyObject.Remove(A)。
スレッド1が実行されlocker.EnterWriteLock()ます。
2つの呼び出しをスレッド化しますmyObject.Remove(B)。
スレッド1はtryブロックに入り、を実行しlist.Remove()ます。
itemこの時点での価値は何ですか?つまりlist.Remove()、パラメータとしてAまたはBを使用して呼び出されますか?