相关疑难解决方法(0)

锁定是否确保从缓存中刷新读取和写入?如果是这样,怎么样?

我正在阅读这篇关于无锁线程同步的MSDN文章.这篇文章似乎推断,只要你在访问共享变量之前输入一个锁,那么这些变量将是最新的(至少在.Net 2.0中).

我想到这是怎么可能的?.Net中的锁只是所有线程在访问内存之前检查的任意对象,但锁本身并不知道正在访问的内存位置.

如果我有一个线程更新变量,甚至整个内存块,那么当进入/退出锁时,这些更新如何保证从CPU缓存中刷新?所有内存访问是否在锁内有效地变为易失性?

c# memory multithreading locking

6
推荐指数
1
解决办法
801
查看次数

标签 统计

c# ×1

locking ×1

memory ×1

multithreading ×1