8.2.6 线程类其他常用的方法

8.2.6  线程类其他常用的方法

Java线程类(Thread)除了提供上述的线程创建、线程控制的方法外,还提供许多方法。常用的方法介绍如下。

1.isAlive(),判断线程目前是否正在运行状态中。

在Thread类的程序接口中提供了isAlive()方法,如果线程被启动并且未被撤销,那么isAlive()返回true。若返回true,则该线程是活动的;如果返回false,则该线程是新创建或是已被终止的。

if(newthread.isAlive()) newthread.stop();

2.resume(),求被暂停得线程继续执行。

3.suspend (),暂停线程的执行。

4.join(),待线程执行完毕。

5.thatThread.join();被等待的那个线程thatThread不结束,当前线程就一直等待

6.yield(),将执行的权力交给其他线程,自己到队列的最后等待。

7.改变线程的优先权。

某一时刻只有一个线程在执行时, 线程调度策略为固定优先级调度。多个线程运行时,级别相同时,由操作系统按时间片来分配。在上例8-2中,如果给两个线程中timer1线程赋予较高的优先权,则发现这个线程垄断CPU控制权。如下所示。

timer1.setPriority(Thread.MAX_PRIORIY);

Thread类设置三个表达线程优先权的常数:

(1) MAX_PRIORITY:线程可能有的最大优先权,值为10;

(2) MIN_PRIORITY:线程可能有的最小优先权,值为1;

(3) NORM_PRIORITY:线程默认优先权,值为5。

posted @ 2009-06-04 11:31  南守拥  阅读(184)  评论(0编辑  收藏  举报