比方说,我有以下方法,即某些工作完成后调用回调。我需要防止局部变量操作。在方法范围
public class MyClass
{
private static object _synblock = new object();
public void MyCallBackMethod()
{
Dictionary<int, int> myDict = new Dictionary<int, int>();
lock(_synblock)
{
myDict.Add(1, 1);
}
}
}
该方法可以被多个线程调用。在这种情况下,是否需要同步对此方法范围中定义的本地变量myDict执行的任何操作(如上所述)?还是完全没有必要?
每个呼叫都将有自己的那个对象的实例所以不需要任何同步 –