在线程中使用 __asm{} 代码有危险吗?
例如,我有 2 个线程在一个内核上运行,main() 在另一个内核上运行。如果一个线程在 eax 上写入并读取 ebx,而另一个线程读取 eax 并在 ebx 上写入,会发生什么情况?如果我从 main() 读取这些寄存器会发生什么?
最佳答案
每个线程都有自己维护的一组寄存器。要么是因为它运行在不同的内核上,要么是操作系统在上下文切换时换出了寄存器。
关于c++ - 汇编代码是否试图到达相同的寄存器,在不同的线程中损坏任何东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11702919/