ontimer 与多线程
Posted mitutao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ontimer 与多线程相关的知识,希望对你有一定的参考价值。
一般来说,在MFC中开启一个UI线程可以用以下代码:
m_pCameraThread = AfxBeginThread(RUNTIME_CLASS(CCameraThread)); if (!m_pCameraThread->PostThreadMessage(UM_VERIFY_AVAILABILITY, NULL, NULL)) { Sleep(10); }
但是,在ontimer的一个case中,不能同时顺序启动两个上述UI线程,建议启动不同的UI线程放在不同的case中顺序执行,否则在debug下会出现***.exe 中的 0x***** 处最可能的异常: 0xC0000005: 读取位置 0x******时发生访问冲突.而release下则不会出现。这种冲突根本不是通过常规的指针越界引起的,该debug非常难以调试。出现上述错误的原因,可能是ontimer函数本身就不是多线程的!
以上是关于ontimer 与多线程的主要内容,如果未能解决你的问题,请参考以下文章