能力值:
( LV4,RANK:40 )
|
-
-
2 楼
线程都卡在系统内核的函数里了吧。或者是有冲突的函数里,系统其他功能不得不等待。
感觉就是太多的功能都是系统函数实现的,而不是用户程序。估计线程抢占就不好用了吧。
再说你说系统不动了。是explorer不动了吧。系统应该还在运转。explorer的优先度好像不高。
没接触过,纯属猜想。呵呵
|
能力值:
( LV3,RANK:20 )
|
-
-
3 楼
谢谢!有道理
系统不动了指其他开的程序都不能用了,切换一下要等好久
还有taskmanager也非常慢,想杀掉vc都办不到
ctrl+alt+delete还有效,能够logoff,以前不知到,都是关电源的。
|
能力值:
( LV4,RANK:40 )
|
-
-
4 楼
等好久不等于不动了。呵呵
我以为是程序让系统慢了那。原来是vc
在调式状态下开10多个线程我感觉卡是正常的。不卡换cpu吧呵呵。
要是Release版本还是卡的话就是程序问题了。
毕竟vc对debug版本多填了好多调试代码用来追踪。要不你就换成Release调试试试,但好多功能都用不了。
|
能力值:
( LV3,RANK:20 )
|
-
-
5 楼
您可能理解错了,线程没有绞到一起是没问题的
那个慢不是一般的慢,和挂死没什么两样,
切换一下进程,不能保证一个小时能出来,可能您没有这个体会。
谢谢!
|
能力值:
( LV10,RANK:170 )
|
-
-
6 楼
我想你的程序是卡在一个线程里面去了..是不是互斥对象没有释放
|
能力值:
( LV3,RANK:20 )
|
-
-
7 楼
就算这样也不应该影响系统的调度吧?
我在想,莫非系统调度的那个时钟中断是可屏蔽的?好像也说不通。
|
能力值:
( LV3,RANK:20 )
|
-
-
8 楼
还有一种可能,就是vc将被调试的多线程程序的优先级提到了最高,而多线程程序又陷入了死锁,并且系统中只有【ALT+TAB】对应的那个进程和【CTRL+ALT+DEL】对应的进程拥有最高优先级,所以系统中只有这三个进程可以动了。
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
如果在等待互斥对象,那应该不占CPU的吧?所以卡死的话,就应该还占着CPU,就好像用管理界面的线程来做后台工作一样
|
能力值:
( LV3,RANK:20 )
|
-
-
10 楼
应该不是在等互斥,而是线程之间以及调试器之间协调有了问题,进入了死循环吧?
|
能力值:
( LV9,RANK:170 )
|
-
-
11 楼
貌似是vc6版本的bug, 以后版本没听说有这个问题。
调试多线程程序时,切换线程经常切死, 界面上几乎没什么响应, 在任务管理器里看,CPU占用都很低,很正常, 我试过做了个快捷键, 一死掉就kill vc, 但是没什么用。
ps: 听说有高人做了个程序,hook在ctrl + alt + del 上, 按这个快捷键就kill vc........
|
能力值:
( LV3,RANK:20 )
|
-
-
12 楼
多谢!!!!!!
|
能力值:
( LV9,RANK:170 )
|
-
-
13 楼
找到了:
你试试这个
http://www.360doc.com/content/071210/15/38907_883977.html
|
能力值:
( LV3,RANK:20 )
|
-
-
14 楼
多谢!!!!!!!!!!!!!!
|
|
|