Windows 中线程同步轮询检查一个变量的错误使用
2016-12-05 19:31
204 查看
1.错误代码如下:
修改的方法:
将 BOOL g_fFinishedCalculation=FALSE; 改成
volatile BOOL g_fFinishedCalculation=FALSE;
原因:
BOOL g_fFinishedCalculation=FALSE; int main(void) { _beginthreadex(..,RecalcFunc,...); while(!g_fFinishedCalculation); ... return 0; } unsigned __stdcall RecalcFunc(void* pParam) { ... g_fFinishedCalculation=TRUE; return 0; }
修改的方法:
将 BOOL g_fFinishedCalculation=FALSE; 改成
volatile BOOL g_fFinishedCalculation=FALSE;
原因:
相关文章推荐
- 一个问题阻止Windows正在检查此机器的许可证。错误代码:0x80070002
- XP启动不了,提示“Windows产品激活,一个问题阻止Windows正确检查此机器的许可证。错误代码:0x8007000”
- 关于进入windows界面时,提示了:一个问题阻止windows正确检查此机器许可证,错误代码为:
- 一个问题阻止windows正确检查此机器的许可证 错误代码:0x80070002
- 一个问题阻止windows正确检查此机器的许可证。错误代码0x80070002
- mysql 变量名称的使用不当的一个错误
- 使用bool 类型变量赋值时的一个错误
- WCF 寄宿于Windows服务 ,可能会报的错:在系统启动时至少有一个服务或驱动程序产生错误。详细信息,请使用事件查看器查看事件日志。
- 一个问题阻止windows正确检查次机器的许可证,错误代码:Ox80070002
- 一个问题阻止windows正确检查此机器的许可证。错误代码0x80070002
- 关于更新windows Service Pack 3 更新后系统登录出现“一个问题阻止Windows正确检查机器的许可证。错误代码 0x80070002”问题解决方案
- 一个问题阻止WINDOWS正确检查此机器的许可证,错误代码为0x8007000
- 纠正<<开始使用Windows Azure PowerShell>>文档中的一个小错误
- 一个问题阻止windows正确检查此机器的许可证 错误代码:0x80070002
- 一个问题阻止Windows正确检查此机的许可证,错误代码Ox80070002
- asp:(0X80004005)操作必须使用一个可更新的查询”错误的解决办法
- 使用STL时的一个链接错误(error LNK2005:std::_Lockit::_Lockit(int)重定义)
- 使用NHibernate时产生的一个错误
- 使用 Visual C# .NET 检查 Windows 版本
- 错误提示:操作必须使用一个可更新的查询