标签: c++ multithreading
在多线程应用程序中的一个线程中执行的最短代码是什么?
例如,我有一个语句int num = ++last_num;(last_num是一个全局变量),它在几个线程中异步执行,我担心这是否安全,因为线程#1可以递增{{ 1}}变量,然后在线程#2中会发生相同的情况,然后第一个线程会将双递增的数字分配给last_num。所以我问一下在一个线程中总是执行的最短代码 - 是一个命令(以num结尾),一条指令还是......?
int num = ++last_num;
last_num
num
谢谢