线程的基本控制

终止一个线程:

当一个线程结束运行并终止时,它就不能再运行了。可以用一个标志来指示run()方法,必须退出一个线程。

public class Runner implements Runnable {

private boolean timeToQuit = false; //终止标志

public void run() { 

while(! timeToQuit) { //当结束条件为假时运行

... 

} 

}

//停止运行的方法

public void stopRunning() {

timeToQuit = true;

}

}

//控制线程类

public class ControlThread {

private Runnable r = new Runner();

private Thread t = new Thread(r);

public void startThread() {

t.start();

}

public void stopThread() {

r.stopRunning();

}

}

程的优先级

使用getPriority方法测定线程的当前优先级。使用setPriority方法设定线程的当前优先级。线程优先级是一个整数(110)。Thread类包含下列常数:

Thread.MIN_PRIORITY      1       (最低级别)

Thread.NORM_PRIORITY     5       (默认的级别)

Thread.MAX_PRIORITY      10      (最高级别)

延迟线程

sleep()方法是使线程停止一段时间的方法。在sleep时间间隔期满后,线程不一定立即恢复执行。这是因为在那个时刻,其它线程可能正在运行而且没有被调度为放弃执行,除非

(a)"醒来"的线程具有更高的优先级

(b)正在运行的线程因为其它原因而阻塞


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值