怎的在程序在计算时,还让程序响应操作
怎样在程序在计算时,还让程序响应操作做了个界面的程序,需要计算很多东西,时间比较长。就是一计算时,cpu就1
怎样在程序在计算时,还让程序响应操作
做了个界面的程序,需要计算很多东西,时间比较长。
就是一计算时,cpu就100%了,程序就不能进行其他操作了,都不自动重绘了,
就连拖动窗口都不行了,
咋整啊
[最优解释]
WM_USER以上的消息都是用户自定义的。所以,你的消息应该是:
#define MY_MESSAGE WM_USER+1
//more message definitions...
[其他解释]把这种重任务放到一个单独的线程里面,当然,其他等待计算结果的线程都要阻塞了.
[其他解释]线程是必须的.
[其他解释]不用线程也行,可以把你的任务分割成若干个小任务,保证每个小任务只运行非常短的一段时间,如果这次小任务完成后还有剩余的工作,就向消息循环发送自定义的“任务继续”消息。程序接到“任务继续”的消息才继续运行剩下的小任务。
当年没有线程之前大伙都这么干,不过现在已经很少有人这么干了。
[其他解释]开个线程单独处理,并且在线程中加个SEELP
[其他解释]看看多线程同步
[其他解释]我后面还要用计算结果绘图,时间还不短,肯定得等会。
[其他解释]是“多线程”么?
是不是用了之后就cpu就不会彪到100%了?
[其他解释]LZ的头像,乍一看还以为自己翻个跟头
[其他解释]看了还得用线程啊
[其他解释]另外消息也可以自定义么?
[其他解释]sleep的作用是?