Вниз
Скачать: CL | DM;

Функции Interlocked...NoFence   Найти похожие ветки 

← →
Empleado ©   (2012-12-13 12:22) [0]

А для чего нужны функции с суффиксом "NoFence"? (например InterlockedAddNoFence, InterlockedCompareExchangeNoFence, etc.)
Учитывая эту приписку: This function generates no memory barriers (or fences) and does not guarantee that independent memory operations before or after it are completed in order.


← →
icWasya ©   (2012-12-13 12:41) [1]

Ну как всегда для оптимизации. Эта функция гарантирует атомарность операции только со своим операндом, и не гарантирует, что другие операции с другими переменными будут выполнены в том же порядке, как они написаны в программе.
Вот  InterlockedAdd гарантирует, что операции, которые в коде написаны дл её вызова, к моменту вызова будут закончены, а те которые написаны после, будут выполнены после. На эту гарантию требуются дополнительные меры и циклы CPU.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.003 c
15-1355043348
O'ShinW
2012-12-09 12:55
2013.04.07
Про админов, зп, руководителей. Свежее :)


15-1355318378
Дмитрий С
2012-12-12 17:19
2013.04.07
Вызов функции с неизвестными параметрами.


15-1355139429
Котик Б
2012-12-10 15:37
2013.04.07
C++Builder XE3 64 bit - really ?


2-1349083810
Чарна
2012-10-01 13:30
2013.04.07
MS Grid control


2-1349255869
cobalt
2012-10-03 13:17
2013.04.07
Incompatible types




   Наверх