这个多线程例子在那出错呢? 没问题,正常情况!isAlive()不是静态方法,通过类名访问它,无效。getPrime线程一直活着。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的线程里就是死循环啊,while(true){}所以一直输出 你搞的好象是单个线程,而且while(getPrime.isAlive())多加两个线程,并加入线程终止条件,可以使用kill() 你用while(true),又没有用break,只是用了break loop!只是又跳到loop:,从新进行一次for (int i=0;i<number;i++)……,而不是停止!当然是死循环!!!break [something]就像C中的goto语句,最好不要用这个功能,实在不得已的时候再用吧!这是个不好的习惯!什么时候想停止,就把break放在那里!!! 我现在奇怪的是程序没有运行到线程!只运行下面: while(primeThread.isAlive()) { System.out.println("Counting the prime number... \n"); try { Thread.sleep(5); }这些语句,真不知道那错,像 weblive(一窍不通 - 大傻) 说的那样,应该是进入死循环呀,但是没有!这是为何? break loop是跳出for循环的,这个没错,尽管没必要。问题是没有地方跳出while(true)这个循环。你的程序已经运行到线程,只要primeThread还在运行就会不断打出Counting the prime number... 求帮忙,偶新手来的 使用Timer无效? paint与paintcomponent的区别 关于网站下音乐播放的问题 一个三角形的问题 向EXCEL中插入一个日期数据。 Applet调用网页和IE的问题 一个路径包含问题,大虾帮忙看一下 java 高手都死绝了!这个问题都不会!以后别说java 比C++强 我想用Java开发类似与CGI,ASP的服务器端程序,用什么好呢? 清除ComBox中所有项的方法是CleanItem还是别的什么? 求救:大家请帮忙,急
}
所以一直输出
多加两个线程,并加入线程终止条件,可以使用kill()
break [something]就像C中的goto语句,最好不要用这个功能,实在不得已的时候再用吧!这是个不好的习惯!
什么时候想停止,就把break放在那里!!!
while(primeThread.isAlive())
{
System.out.println("Counting the prime number... \n");
try
{
Thread.sleep(5);
}
这些语句,真不知道那错,像 weblive(一窍不通 - 大傻) 说的那样,应该是进入
死循环呀,但是没有!这是为何?