yigal_s: (0)
yigal_s ([personal profile] yigal_s) wrote 2010-09-19 07:59 am (UTC)

ну и я тоже невнимательно читал.

С другой стороны, а вот где в этой самой документации написано, что операция записи, которую делат один процессор, будет вообще хоть когда-то видна другому процессору? :-)

Типа, почему должен выйти следующий цикл?

thread A:
for(;;)
if(flag==1)
break;

thread B:
flag=1;

Он, кстати, может и не выйти, если не объявить flag как volatile - оптимизатор этот самый цикл может переделать так, что flag будет читаться один раз.

Спрашивается - а почему подобная оптимизация не произойдет на уровне железа процессора? Где об этом сказано в документации?

Post a comment in response:

This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting