x86汇编中lock指令的问题
代码如下:
- Assembly code
test_and_set_ptr: movl 4(%esp),%ecx movl 8(%esp),%eax movl 12(%esp),%edx lock cmpxchgl %edx,(%ecx) mov $0,%eax sete %al ret .align 4,0x90 .type q_atomic_test_and_set_ptr,@function .size q_atomic_test_and_set_ptr,.-q_atomic_test_and_set_ptr
代码里的lock指令是锁总线,那到什么地方释放总线呢?
[解决办法]
那条指令执行完毕之后释放