一个程序同时开500个线程,是否太多了,会导致死掉? 我的程序需要同时开500个左右的线程,刚开始能正常运行,但运行几天后就死掉了,提示非法内存访问。我非常仔细的查了可能引起内存溢出的地方,没有发现问题。因此怀疑是不是线程开的太多了。谁有这方面的经验吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 可能是同步的问题试着 在 线程中 导出一些信息 到 log 文件 加上时间 zdjnju() ( ) 信誉:100 2006-05-09 12:41:00 得分: 0 可以肯定的是:单纯创建500个线程不会造成程序崩溃。应该是你程序的问题,把具体的出错信息贴上来看看?另外,考虑异步IO、端口多路复用、线程池等机制看看,不要动不动就创建线程。 ====================同 单cpu的机子,开太多线程,性能可能更低,同步也是个大问题。 线程太多也不是好的解决方案,因为CPU的个数是有限的。500个太多了。 还要考虑cpu的切换时间片,耗。 关于文件以共享方式打开,请各位师兄师姐看看这段代码如何改正? 友元定义位置提问。 idl编译出错,怎么解决啊? 求助:VC下怎样实现中断响应以及对PS/2端口的读写? vc下用ADO怎样才能才能创建表 单实例怎么会非法操作 随机数的问题 如何屏蔽热键啊?包括ALT+CTRL+DELETE??????????? 如何获得CDHtmlDialog中Internet Explorer_Server窗口句柄? MDI中主框架怎么得到文档指针? atl/com如何使用编写好了的控件(ocx)? 请问vc开发的界面中怎样让时间标志随着进程的进展不断增加
试着 在 线程中 导出一些信息 到 log 文件 加上时间
可以肯定的是:单纯创建500个线程不会造成程序崩溃。应该是你程序的问题,把具体的出错信息贴上来看看?另外,考虑异步IO、端口多路复用、线程池等机制看看,不要动不动就创建线程。
====================
同