问题描述
- mfc 进程问题 MessageBox函数
-
我写了一个mfc程序,开启一个线程获取数据,主线程对获取的数据进行处理显示。当在主线程中加上MessageBox函数时程序运行结果正常,不加运行结果就有问题。不知这是为什么会有这个现象。但是这个MessageBox函数仅是我调试时用的,没有任何实际意义
解决方案
MessageBox会阻塞当前消息处理过程,要用日志的方式调试。
解决方案二:
有没有 MessageBox 表现不同,说明是时序的问题。
请代码,仅从你的描述无法分析问题所在。
解决方案三:
MessageBox会阻塞当前线程,这样你的主线程就一直等待,从而子线程可以完成各项工作,而没有的话,主线程会继续运行,导致你线程同步出现问题
你需要解决你的线程同步的问题
解决方案四:
看看是不是程序中获取数据的代码是异步的。直接执行因为没有延迟,主程序还没来得及获取数据,就出错了。
解决方案五:
主线程需要等待子线程完成,在来处理数据,否则没有获取到数据自然就有问题了
解决方案六:
工作线程得到数据以后发送消息给主线程,主线程接收处理消息,得到数据并显示。
时间: 2024-11-03 07:39:37