问题描述
class ThreadDemo1{public static void main(String []args){Thread tt=new TestThread();tt.start();int index =0;while(true){if(index++ == 100) try { tt.join(); } catch(Exception e) { System.out.println(e.getMessage()); }System.out.println("main"+Thread.currentThread().getName());}}}class TestThread extends Thread{public void run(){while(true){System.out.println("run"+Thread.currentThread().getName());}}}//上面的程序是让两个 线程交替执行 然后再将子线程合并到主线程中去的 但是打印出的结果是这样的runThread-0 一直循环 为什么会只有一个线程呢 应该有两个的请朋友帮忙看看
解决方案
我觉得是不是因为index太小导致一个线程还没执行就join变成一个了?试试加大index的值或者sleep一下?
时间: 2024-11-03 06:51:42