Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在线程中使用 __asm{} 代码是否危险?
例如,我有 2 个线程在一个内核上运行,而 main() 在另一个内核上运行。如果一个线程在 eax 上写入并读取 ebx 而另一个线程在 eax 上写入并在 ebx 上写入会发生什么?如果我从 main() 读取这些寄存器会发生什么?
每个线程都有自己维护的一组寄存器。要么是因为它在不同的内核上运行,要么是操作系统在上下文切换时换出了寄存器。
只有您的“全局”(非堆栈)变量在线程之间共享。
这已经在 SO 上讨论过了。