程序里用到多线程,api 
我的程序运行的工作量不大但是程序要运行很长时间 程序运行中要等待,但是这样cpu占用率很高
还有一个很烦人的问题是我的程序关不了 进程还在
最急的问题是 我的程序过了一段时间(有时候是10分钟,有时候是1个小时,不定)程序就没有响应了  关闭主forms  系统报告 "程序无响应"我不知道 程序无响应是什么意思 ,为什么无响应?  各位帮忙啊

解决方案 »

  1.   

    我的 程序比较长啊 贴在这里好象贴不上 各位有用 qq 的吗加我 我给你们发我的原码 我也不管我的原码能不能见人了 能帮我解决问题就行了我的QQ 63972227留下 Email 也可以
      

  2.   

    没人理?--自己找自己和回进程和线程Jeffrey Richter的Advanced Windows中有详尽的介绍,大家可以参考那里解释。
    至于“死”嘛,英文中的对应的词儿应该是"Crash"吧。只是我们平时使用时,往往不准确,一个进程产生了内存访问越界、非法的CPU指令、除零溢出等,都会被系统终止。这个进程就算是“死了”。但有的时候进程中的线程如果因为处理过程的时间太长,则阻碍了消息队列的处理时,系统就会认为这个线程没有响应了(阈值是五秒,但Microsoft可能会修改这个限定值),注意,这里的没有响应是针对线程的,而不是进程(从定义的角度,进程是结构体,线程是执行体,所以进程也无没有响应一说)。至于进程没有响应是指进程中所有的用户界面线程都没有响应了。
      

  3.   

    socket关闭的时候要释放。
    先释放网络资源,再是应用程序资源。不然程序还是在访问网络。为程序的关闭事件编码
      

  4.   

    无响应:
    界面线程中的run消息循环无法正常循环,所以处理不了鼠标键盘等消息。
      

  5.   

    没看到你的代码,不好瞎说用线程池建线程的时候间隔时间长一些。保证有几个线程干活,比单线程快点就行,各个块都要try,关注每个catch返回的信息。
    这样调试一下差不多能找到问题