首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

请问:多线程代码结果不稳定的有关问题

2013-10-27 
请教:多线程代码结果不稳定的问题怎么解释下面这个代码,得到的结果不稳定,有的时候是30,有的时候是50,谢谢

请教:多线程代码结果不稳定的问题
怎么解释下面这个代码,得到的结果不稳定,有的时候是30,有的时候是50,谢谢。
执行的时候发现,创建的6个线程中有的时候会有3个、4个或5个卡在了while(!g_start);这句了。把它换成while(!g_start) Sleep(1);就正常得很。很想知道为什么,怎么解释这个问题? 谢谢。

                              
[解决办法]
Change 
    bool g_start = false;

To
    volatile bool g_start = false;

热点排行