InterlockedExchange
- From
- Crusader Mike (2:450/159.24)
- To
- All
- Date
- 2002-07-29T18:00:39Z
- Area
- SU.WINDOWS.NT.PROG
Hi, All!
Только ногами не бейте, т.к. не совсем топик:
почему ::InterlockedExchange() в Win2000 реализована:
mov ecx,dword ptr [esp+4]
mov edx,dword ptr [esp+8]
mov eax,dword ptr [ecx]
nop
cmpxchg dword ptr [ecx],edx
jne 77E86ACD
ret 8
а не
mov ecx,dword ptr [esp+4]
mov eax,dword ptr [esp+8]
xchg dword ptr [ecx], eax
ret 8
?
В чем была глубокая идея использования цикла + cmpxchg вместо простого xchg?
Sincerely yours, Prihodko Michael.
---
* Origin: Crusader was there! o=|======> (2:450/159.24)