循环创建线程(::_beginthreadex),CPU 100%问题 发觉加上Sleep(1); 按钮拼命点程序还是会卡掉; 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 不加Sleep(1),主线程在一瞬间创建了60个线程,多个线程之间的切换导致了短时间内CPU 占用率太高加上那个Sleep(1) 之后主线程每创建一个线程后就让出时间片,执行其他的线程,而其他线程什么也不做,就直接退出了。所以同一时刻同时运行的线程并不多,也就不会发生线程之间的频繁切换 主要是线程切换消耗CPU时间,导致界面线程得不到时间片~~ 主要是线程切换消耗CPU时间,导致界面线程得不到时间片~~ 主要是线程切换消耗CPU时间,导致界面线程得不到时间片~~不是很明白你的意思, 我才创建60个线程.尽管线程切换消耗CPU时间;那也不大可能卡到连机器都动不了啊.WINDOW不是可以同时跑上百个线程的吗?那些服务器不同时搞了上百个线程跑.再说了我这线程一开启就结束掉的; 不加Sleep(1),主线程在一瞬间创建了60个线程,多个线程之间的切换导致了短时间内CPU 占用率太高 ;我就是等上半个小时.程序一样挂在那不动,界面什么都点不了! void CMainDlg::OnButton(UINT uNotifyCode, int nID, CWindow wndCtl) 这个是阻塞式调用,它会把界面消息阻塞住,直到这个函数退出才会有新的消息得到执行.而这期间,大量的反复创建线程,会使CPU占用率直线上升,从而使界面挂住. 好像问题在 _beginthreadex函数, 不返回. 线程函数Dummy_SendThread中做了什么,线程少创建一点呢.. Dummy_SendThread什么都不做的.直接 return 0;这才叫郁闷. 他说过了,线程函数直接返回0,只有一句话:return 0;加了sleep(1),按钮界面让出时间段,界面会小卡一会,但CPU变化不大的呵呵,等于是每次运行一个线程,而这个线程又马上返回了,系统基本在同一时间只增加一个线程调度,不会占用太多CPU,不加sleep(0),在按钮运行的时候时间段里,可能瞬间要产生N个线程,系统要忙着为这几个线程分配空间的初始化呢,CPU自然就上去了,界面线程有可能分不到时间段,就假死在那里了 他说过了,线程函数直接返回0,只有一句话:return 0;加了sleep(1),按钮界面让出时间段,界面会小卡一会,但CPU变化不大的呵呵,等于是每次运行一个线程,而这个线程又马上返回了,系统基本在同一时间只增加一个线程调度,不会占用太多CPU,不加sleep(0),在按钮运行的时候时间段里,可能瞬间要产生N个线程,系统要忙着为这几个线程分配空间的初始化呢,CPU自然就上去了,界面线程有可能分不到时间段,就假死在那里了 刚打了vs2005 sp1补丁.好像没问题了.晕死!在此谢谢各位热心帮助...... 新手提问 mfc项目不能使用zedgraph控件? MFC怎样获取网页内容。 ActiveX 控件退出问题 windows核心编程是哪个出版社出的 100分求助,spreadsheet使用 使用CSpinButtonCtrl控件,怎么让随着变动的EDIT中的数字不带个 逗号 “,” 请教!解析XML可否做成动态库,VC、VB都可以来使用。怎样实现? 把自己的窗口帖在博客上!!! 如何使用vc制作一个驱动程序的install安装程序? mfc dll中如何使用webbrowser控件 求教:将界面做成DLL,实现数据交互
主线程每创建一个线程后就让出时间片,执行其他的线程,而其他线程什么也不做,就直接退出了。所以同一时刻同时运行的线程并不多,也就不会发生线程之间的频繁切换
不是很明白你的意思, 我才创建60个线程.尽管线程切换消耗CPU时间;那也不大可能卡到连机器都动不了啊.WINDOW不是可以同时跑上百个线程的吗?那些服务器不同时搞了上百个线程跑.再说了我这线程一开启就结束掉的;
我就是等上半个小时.程序一样挂在那不动,界面什么都点不了!
而这期间,大量的反复创建线程,会使CPU占用率直线上升,从而使界面挂住.
这才叫郁闷.
加了sleep(1),按钮界面让出时间段,界面会小卡一会,但CPU变化不大的呵呵,等于是每次运行一个线程,而这个线程又马上返回了,系统基本在同一时间只增加一个线程调度,不会占用太多CPU,
不加sleep(0),在按钮运行的时候时间段里,可能瞬间要产生N个线程,系统要忙着为这几个线程分配空间的初始化呢,CPU自然就上去了,界面线程有可能分不到时间段,就假死在那里了
加了sleep(1),按钮界面让出时间段,界面会小卡一会,但CPU变化不大的呵呵,等于是每次运行一个线程,而这个线程又马上返回了,系统基本在同一时间只增加一个线程调度,不会占用太多CPU,
不加sleep(0),在按钮运行的时候时间段里,可能瞬间要产生N个线程,系统要忙着为这几个线程分配空间的初始化呢,CPU自然就上去了,界面线程有可能分不到时间段,就假死在那里了
在此谢谢各位热心帮助......