线程的控制(常见方法)

线程的控制(常见方法)

休眠线程、加入线程、礼让线程、后台线程

A:休眠线程

public static void sleep(long millis):在指定的毫秒数内让当前正在执行的线程休 眠(暂停执行),

此操作受到系统计时器和调度程序精度和准确性的影响。

 该线程不丢失任何监视器的所属权。 

EgThread.sleep(1000);

B:加入线程

public final void join():等待该线程终止(为了让某些线程执行完毕,别人才      能继续)

 

     Eg: tj1.start();

try {

tj1.join();//只有当tj1执行完毕,其他进程    才能开始

} catch (InterruptedException e) {

e.printStackTrace();

}

 

C:礼让线程

public static void yield():暂停当前正在执行的线程对象,并执行其他线程。

让多个线程的执行更和谐,但是不能靠它保证一人一次。

 

Eg: Thread.yield();

 

 

 

D:后台线程

public final void setDaemon(boolean on):将该线程标记为守护线程或用户线程。

 当正在运行的线程都是守护线程时,Java 虚拟机退出。 

该方法必须在启动线程前调用。

Eg // 设置守护线程当正在运行的线程都是守护线程时,Java //虚拟机退出

td1.setDaemon(true);

td2.setDaemon(true);

 

td1.start();

td2.start();

 

E:线程中断

public final void stop():(已经过时)

public void interrupt():中断线程。把线程的状态终止,并抛出一个 InterruptedException

Eg public static void main(String[] args) {

ThreadStop ts = new ThreadStop();

ts.start();


try {

Thread.sleep(3000);

// ts.stop();

ts.interrupt();

} catch (InterruptedException e) {

e.printStackTrace();

}

}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值