package 多线程技能1;
import com.sun.scenario.effect.impl.sw.sse.SSEBlend_SRC_OUTPeer;
import java.util.Random;
/**
* 优先级的随机性
*
* 线程具有优先级,优先级越高的线程往往能够优先执行完,但这个结果不是绝对的
* ,因为线程的优先级还具有“随机性”,即优先级较高的线程不一定每一次都先执行完。
*
* 结果分析 优先级较高的线程并不是每次都先执行完run()方法中的任务,也就是说
* 线程的优先级与输出顺序无关,这俩者之间没有依赖关系,他们具有不确定性、随机性。
*/
class MyThreadT1143 extends Thread{
@Override
public void run() {
long begTime=System.currentTimeMillis();
for (int i=0;i<1000;++i){
Random random=new Random();
random.nextInt();
}
long endTime=System.currentTimeMillis();
System.out.println("*****thread 1 use time="+(endTime-begTime));
}
}
class MyThread2T1143 extends Thread{
@Override
public void run() {
long bedinTime=System.currentTimeMillis();
for (int i=0;i<1000;++i){
Random random=new Random();
random.nextInt();
}
long endTime=System.currentTimeMillis();
System.out.println("------Thread 2 use time="+(endTime-bedinTime));
}
}
class RunT1143{
public RunT1143(){
for (int i=0;i<5;++i){
MyThreadT1143 myThreadT1143=new MyThreadT1143();
myThreadT1143.setPriority(5);
myThreadT1143.start();
MyThread2T1143 myThread2T1143=new MyThread2T1143();
myThread2T1143.setPriority(6);
myThread2T1143.start();
}
}
}
public class T1143 {
public static void main(String[] args) {
RunT1143 runT1143=new RunT1143();
}
}
优先级的随机性——T1143
最新推荐文章于 2022-06-02 17:08:42 发布