我学习C#和我感到困惑与类实例的副本线程安全的,如下:C#线程安全
eg:
classA objA;
classA objB = objA;
objA.field1 = value2; //do I need lock around modification of field1?
//let say we pass the objB to another thread
objB.field1 = value1 //do I need a lock for objB because of the modification of field1?
我很困惑,因为从C的背景来++中, C#中的类是引用类型。如果objA和objB都指向相同的内存底层,那么我需要一个锁来保护同时写入field1。有人可以证实这一点,或者我错过了什么吗?
谢谢。
原子性和线程安全通常是两个不同的问题。但我不是一个C#大师... – Guillaume 2011-01-10 09:47:37