我创建了一个调用函数以更改变量值的线程,但是当它完成时,值不再被更改。线程更改变量值并查看其外部的更改
它只是一个例子,它不是真正的代码。
THREAD1:
if(size = socket.recv(data))deserializeData(data)
deserializeData(){
//Deserialize the data (csv format) and then copy to command
command = tmp;
}
Outside the thread
cout << command
线程内,deserializeData如果我把它正确地显示了命令,但外面当我做COUT它显示什么。
我看到了易失性,但我试着用我的字符串变量,它不工作。
感谢
是否有多个线程可以访问该变量? – Erwald 2012-04-24 18:09:45
'不是真正的代码'意味着你将无法获得太多'真正的帮助' – 2012-04-24 18:10:14
定义了'command'的范围和范围?你确定'cout'在作业后被执行了吗? – smocking 2012-04-24 18:12:20