Код: Выделить всё
class foo {
static volatile instance;
static object l = new object();
public static foo Instance {
if (instance == null)
lock(l) {
if (instance == null)
instance = new foo();
}
return instance;
}
}
Вызывает ли использование изменяемого поля барьер памяти или что-либо еще? типа перезагрузки кэша процессора? Или каждый раз он просто обращается к основной памяти только для этого поля?
Подробнее здесь: https://stackoverflow.com/questions/100 ... sor-system