100分向多线程高手求救!!!急急!!!!!!

chyuping 2003-09-11 11:01:06
我写了一个程序,是对网页数据进行搜索,线程写在一个循环里,可是为什么到了运行完最后一个线程时,就会出现死机,但是不到最后一个线程就不会出现这种情况,不知道是为什么??
代码太多不好贴出来分析,请高手帮我分析一下大致的问题!!!!!
...全文
19 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
chyuping 2003-09-15
  • 打赏
  • 举报
回复
又分析了一下:具体情况是这样:
在主类里调用一个线程类,对网页进行关键字搜索,这个线程类在主类里放在一个循环里,
for(int i = 0; i < threadNum;i++)
(new WrThread()).start();
然后开始对网页搜索,总是在读取完最后一个网页时死机??
即使我把threadNum设为1也会在读取完最后一个网页时死机??但是不到最后一个网页时不会出现这种情况。但是这种情况也不是每次都会出现,所以我分析是线程哪里出了问题?如果是死循环的话,就会每次都死机,所以我想不是死循环的事。
代码太长了,请高手根据我说的情况大致帮我分析一下原因!!!!
不胜感激!!!!
wdydt163 2003-09-15
  • 打赏
  • 举报
回复
难道是I/O有问题?
hesi726 2003-09-13
  • 打赏
  • 举报
回复
最好是给出代码!
hesi726 2003-09-13
  • 打赏
  • 举报
回复
1. 设置 threadNum=1 看看死不死机!!
2. 检查 锁定的资源冲突


JavaBoyCaoJi 2003-09-13
  • 打赏
  • 举报
回复
有没有死循环。
wks9527 2003-09-11
  • 打赏
  • 举报
回复
如果第一个没有死,最后一个也不应该会死的,我看问题可能不是出在最后一个,楼主不妨追踪清楚,线程里面有没有资源争抢的问题。
Wnyu 2003-09-11
  • 打赏
  • 举报
回复
可能是线程代码中出现死锁或死循环。
wdydt163 2003-09-11
  • 打赏
  • 举报
回复
估计是线程的问题:)

线程的代码可以贴出来吗?
mayanwei 2003-09-11
  • 打赏
  • 举报
回复
你怎么知道是最后一个线程时就死?
chyuping 2003-09-11
  • 打赏
  • 举报
回复
for(int i = 0; i < threadNum;i++)
(new WrThread()).start();
总是到最后一个线程时就死了?为什么???
wdydt163 2003-09-11
  • 打赏
  • 举报
回复
线程写在一人循环里,那把这段贴出来吧,要不真得不知道是什么原因
playgb 2003-09-11
  • 打赏
  • 举报
回复
资源没有释放吧。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧