一个全局变量在不同线程的函数里访问为何不行
一个全局变量在不同线程的函数里访问为什么不行?
------解决方案--------------------
int i = 0;
void test()//定时器消息处理函数,每0.5秒执行一次
{
//主线程
cout<< i <<endl;//为什么一直是0????
}
void test()
{
//子线程
i = 3;
}
------解决方案--------------------
int i = 0;
pthread_mutex mutex;
void test()//定时器消息处理函数,每0.5秒执行一次
{
//主线程
pthread_mutex_lock(&mutex);
cout<< i <<endl;//为什么一直是0????
pthread_mutex_unlock(&mutex);
}
void test()
{
//子线程
pthread_mutex_lock(&mutex);
i = 3;
pthread_mutex_unlock(&mutex);
}