public class Main extends Thread{
private int i ;
public void run(){
for ( ; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
}
}
public static void main(String[] args) throws InterruptedException {
for (int i = 0; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
if (i == 20){
new Main().start();
new Main().start();
}
}
}
}
为什么在Main线程执行完之后才执行Thread-0线程?在Thread-0之后才执行Thread-1线程?不是应该在i = 20时就执行吗?
用的idea编辑运行,jdk1.8
private int i ;
public void run(){
for ( ; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
}
}
public static void main(String[] args) throws InterruptedException {
for (int i = 0; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
if (i == 20){
new Main().start();
new Main().start();
}
}
}
}
为什么在Main线程执行完之后才执行Thread-0线程?在Thread-0之后才执行Thread-1线程?不是应该在i = 20时就执行吗?
用的idea编辑运行,jdk1.8
System.out.println(Thread.currentThread().getName() + " " + i);
try{
Thread.sleep(100);
}catch (Exception e){
e.printStackTrace();
}
if (i == 20){
new test().start();
new test().start();
}
}
private int i ;
public void run(){
for ( ; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
}
}
public static void main(String[] args) throws InterruptedException {
for (int i = 0; i < 100 ; i++) {
System.out.println(Thread.currentThread().getName() + " " + i);
if (i == 20){
Thread.sleep(500);
new Main().start();
new Main().start();
}
}
}
}
欢迎光临我的博客
http://happyshome.cn