第一种方法是利用交互式线程,而不要用工作线程。
或者响应可继承函数OnIdle();
或者响应可继承函数OnIdle();
解决方案 »
- winpcap pcap_dispath()pcap_loop()pcap_next_ex()哪个速度快
- tab控件中TCN_SELCHANGING 和TCN_SELCHANGE区别,最好用实例说明。
- 求助:windowsAPI的系统音量控制,??
- 怎样用VC做一个可以存放二维邻接距阵一样的表格啊?
- MFC中自定义消息的问题
- 关于IP和DNS的问题,希望各位哥哥姐姐帮帮我,小弟愿裸求!!!!
- 问一个Socket非阻塞问题
- 考研好还是搞技术好、啊??/
- 很简单的问题,键盘钩子
- 请问哪里有介绍vs2010 dll,MFC的使用这方面的知识
- 如何调用远程进程
- 如何给基于Dialog的应用程序加上菜单?
最好在线程结束时发个消息给主线程,使之启动一个新线程
还快速的IO设备或快速CPU.:)
建议你先用主线程创建一个子线程A,由A完成你所说的检查、创建(I/O子线程)等工作,而让你的主线程正常响应消息,这样应该是有效的。
祝好运!
作相应的处理
你如果在线程内不停地查询,那当然会占用大量的CPU时间!这时可在循环检测中加入一些Sleep语句。
不要不停地创建线程,在同一线程内循环检查,如果等到事件,就发送消息或把信息放在数据队列中,主线程定时检测。
这里我用的是向主MainFrame发消息的方法
当Thread个数比较少的时候是正常的,一多就响应很慢了
怎么解决?
(我认为可能是消息队列中的消息太多,系统来不及处理菜单响应)