首页 > 编程语言 > 详细

Java线程: 线程属性

时间:2015-12-21 18:12:40      阅读:182      评论:0      收藏:0      [点我收藏+]

1 线程优先级

  每一个线程都有一个优先级。一个线程继承它父线程的优先级。可以用setPriority方法提高或降低任何一个线程的优先级,具体为1-10之间的数

2 守护线程

  调用t.setDaemon(true)将线程转换成守护线程。守护线程的唯一用途是为其他线程提供服务。计时线程就是一个例子,它定时的发送“计时器滴答”信号给其他线程或清空过时的高速缓存项的线程,最后只剩下守护线程时,JVM就退出了。

3 未捕获异常处理器

  run方法不能抛出任何被检测的异常,但是,不被检测的异常就会导致线程的终止。但是不需要任何catch字句来处理被传播的异常。相反,死亡之前,异常被传递到一个用于未捕获异常处理器。该处理器实现一个Thread.UncaughtExceptionHandler接口的类。这个接口只有一个方法即:void uncaughtException(Thread t,Throwable e)

  用setUncaughtaExceptionHandler方法为任何线程安装一个处理器。但是如果不为此独立的线程安装处理器,则ThreadGroup类对象即为此时的处理器。

  ThreadGroup类实现了Thread.UncaughtExceptionHandler接口。它的uncaughtException方法做如下操作:

    1) 如果该线程组有父线程组,那么父线程组的uncaughtException方法被调用。

    2) 否则,如果Thread.getDefaultExceptionHandler方法返回一个非空的处理器,则调用该处理器。

    3) 否则,如果Throwable是ThreadDeath的一个实例,什么都不做。

    4) 否则,线程的名字以及Throwable的栈轨迹被输出到System.err上。此时可以看到多次的栈轨迹。

Java线程: 线程属性

原文:http://www.cnblogs.com/liuzhongfeng/p/5064022.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!