黑马程序员技术交流社区
标题:
java Thread类
[打印本页]
作者:
想、一个人
时间:
2013-6-3 19:43
标题:
java Thread类
线程中的7种非常重要的状态:(有的书上也认为只有前五种状态:而将"锁池"、"等待池"
都看成是"阻塞"状态的特殊情况:这种认识也是正确的,但是将"锁池"和"等待池"单独分
离出来有利于对程序的理解)
1、初始状态、线程创建、线程对象调用start()方法。
2、可运行状态、也就是等待Cpu资源、等待运行的状态。
3、运行状态、获得了Cpu资源,正在运行状态。
4、阻塞状态、也就是让出Cpu资源、进入一种等待状态、而不是可运行状态、有三种
情况会进入阻塞状态。
1)、如等待输入(输入设备进行处理、而Cpu不处理)、则放入阻塞、直到输入完毕、
阻塞结束后会进入可运行状态。
2)、线程休眠、线程对象调用sleep()方法、阻塞结束后会进入可运行状态。
3)、线程对象2调用线程对象1的join()方法、那么线程对象2进入阻塞状态、直到线
程对象1中止。
5、中止状态、也就是执行结束。
6、锁池状态。
7、等待队列。
线程的优先级:
线程的优先级代表该线程的重要程度、当有多个线程同时处于可执行状态并等待获得
CPU时间时、线程调度系统根据各个线程的优先级来决定给谁分配CPU时间、优先级高
的线程有更大的机会获得CPU时间、优先级滴的线程也不是没有机会、只是机会要小一
些罢了。
你可以调用Thread类的方法getPriority()和setPriorty来存取线程的优先级、线程的
优先级介于1(MIN_PRIORITY)和10(MAX_PRIORITY)之间、缺省是5
(NORM_PRIORITY)。
作者:
HM张勇
时间:
2013-6-8 11:33
收下了,谢谢楼主分享!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2