duan2

导航

 

1.线程的优先级

  在操作系统中,线程可以划分优先级,优先级高的线程得到的CPU资源较多,也是CPU优先执行优先级较高的线程对象中的任务。

  设置线程优先级有助于帮“线程规划器”确定在下一次选择哪一个线程来优先执行。

  设置优先级使用setPriority()方法。

 

 

 线程优先级的继承性

  java中线程的优先级具有继承性,比如A启动B,则B的优先级和A相同。

优先级具有规则性

虽然使用setPriority()方法可以设置线程的优先级,但还没有看到设置优先级所带来的效果

线程2:

高优先级的线程总是大部分先执行完,但不代表高优先级的线程全部先执行完。不要以为MyThread线程被main线程调用就会先执行完,出这样的结果完全是MyThread1的优先级是10造成的。

当线程的优先级差别很大时,谁先执行完和代码的调用顺序无关。

优先级具有随机性

守护进程

java线程中有两种线程,一种是用户线程,一种是守护线程。

守护线程是一种特殊的线程,当线程中不存在非守护线程时,守护线程自动销毁。典型的守护线程是垃圾回收线程。任何一个守护线程都是在整个JVM中所有的非守护线程的“保姆”,只要当前JVM实例中存在任何一个非守护线程没有结束,守护线程就在工作,只有等最后一个非守护线程结束时,守护线程才随着JVM一同结束工作。

 

posted on 2017-09-28 18:25  duan2  阅读(403)  评论(0编辑  收藏  举报