开发平台(Platform): (Ex: Win10, Linux, ...)
win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
qt
全局静态变量
static vector<Class_A> Class_A_List;
static int fun1()
{
//使用到Class_A_List
}
static int fun2()
{
//使用到Class_A_List
}
我在程式中使用了多线程
每个线程在启动时会创建
Class_A Obj; //会有很多个
并且加入到全局静态变量内
Class_A_List.push_back(Obj);
并使用静态函数
fun1();
fun2();
PS:线程各自有Obj
只是全部储存在Class_A_List
调用fun1()及fun2得去Class_A_List找出Obj
去读写Obj
我目前使用线程一个执行完再接一个不会出错
第一个线程还没结束 就启动第二个线程
程式就会终止
问题
请问一下
1.多线程能同时使用同一个静态函数吗?
2.多线程能同时使用同一个全局静态变量 如上面的Class_A_List?
即便它们是各自读取修改各自的Obj
谢谢