Spin locks
- From
- Crusader Mike (2:450/159.24)
- To
- Gennady Mayko
- Date
- 2002-07-10T11:48:11Z
- Area
- SU.WINDOWS.NT.PROG
Hi, Gennady!
GM> на многопроцессорных машинах, связана с полем SL->Processor в структуре.
GM> Скорее всего, тип этой переменной unsigned long (4 байта). Если она не
GM> будет выровнена в памяти (т.е. ее адрес не делится на 4), то чтение или
GM> запись этой переменной не гарантировано является атомарной.
А если почитать 'Platform SDK Documentation\Base Services\DLLs, Processess,
and Threads\Synchronization\About Synchronization\Synchronization and
Multiprocessor Issues', то убедимся что и в случае правильно выравненной
переменной на многопроцессорной машине может ничего не получиться. Я так
полагаю там нужно локать шину (XLOCK префикс по-моему)
Sincerely yours, Prihodko Michael.
---
* Origin: Crusader was there! o=|======> (2:450/159.24)