スレッドの呼び出しにランダム性がある
1329 ワード
package com.freeflying.thread.base;
/**
* @ClassName: TestThreadRandom
* @Description:
* @author freeflying
* @date 2018 6 21
*/
public class TestThreadRandom {
public static void main(String[] args) {
try {
MyThreadRandom myThread=new MyThreadRandom();
myThread.setName("myThread");
myThread.start();
for (int i = 0; i < 10; i++) {
int time=(int) (Math.random()*1000);
Thread.sleep(time);
System.out.println("main:"+Thread.currentThread().getName());
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class MyThreadRandom extends Thread{
@Override
public void run() {
try {
for(int i = 0; i< 10; i++) {
int time=(int)(Math.random()*1000);
Thread.sleep(time);
System.out.println("current run:"+Thread.currentThread().getName());
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
結果を返します.
main:maincurrent run:myThreadmain:mainmain:maincurrent run:myThreadmain:maincurrent run:myThreadcurrent run:myThreadmain:mainmain:maincurrent run:myThreadmain:maincurrent run:myThreadmain:maincurrent run:myThreadmain:maincurrent run:myThreadmain:maincurrent run:myThreadcurrent run:myThread