我知道我不能在值类型上使用锁 (SyncLock),如本文所述:
http://msdn.microsoft.com/msdnmag/issues/03/01/NET/
但我的问题是,这是否意味着我不需要?还是我需要将布尔值包装在一个对象中,以便可以锁定它?如果答案是否定的,我不需要锁定它,当两个线程尝试同时更改值时会发生什么?在我目前正在处理的应用程序中,两个线程可能会尝试同时将其设置为 true 和 false。
我知道我不能在值类型上使用锁 (SyncLock),如本文所述:
http://msdn.microsoft.com/msdnmag/issues/03/01/NET/
但我的问题是,这是否意味着我不需要?还是我需要将布尔值包装在一个对象中,以便可以锁定它?如果答案是否定的,我不需要锁定它,当两个线程尝试同时更改值时会发生什么?在我目前正在处理的应用程序中,两个线程可能会尝试同时将其设置为 true 和 false。