《2018年4月16日》【连续188天】
标题:线程属性;
内容:
1.线程优先级:
在Java 程序设计语言中, 每一个线程有一个优先级。默认情况下, 一+线程继承它的父
线程的优先级。可以用setPriority 方法提高或降低任何一个线程的优先级。可以将优先级设
置为在MIN_PRIORITY (在Thread 类中定义为1 ) 与MAX_PRIORITY (定义为10 ) 之间的
任何值。NORM_PRIORITY 被定义为5。
每当线程调度器有机会选择新线程时, 它首先选择具有较高优先级的线程。但是,线程
优先级是高度依赖于系统的。当虚拟机依赖于宿主机平台的线程实现机制时, Java 线程的优
先级被映射到宿主机平台的优先级上, 优先级个数也许更多,也许更少。
•void setPriority(int newPriority)
设置线程的优先级。优先级必须在Thread.MIN_PRIORITY 与Thread.MAX_PRIORITY
之间。一般使用Thread.NORMJ»RIORITY 优先级。
•static int MIN_PRIORITY
线程的最小优先级。最小优先级的值为1。
•static int N0RM_PRI0RITY
线程的默认优先级。默认优先级为5。
•static int MAX—PRIORITY
线程的最高优先级。最高优先级的值为10。
•static void yield( )
导致当前执行线程处于让步状态。如果有其他的可运行线程具有至少与此线程同样高
的优先级,那么这些线程接下来会被调度。注意,这是一个静态方法。
2.守护线程:
可以通过调用
t .setDaemon(true) ;
将线程转换为守护线程(daemon thread)。 这样一个线程没有什么神奇。守护线程的唯一用途
是为其他线程提供服务。
3.未捕获异常处理器