首页 > 学院 > 开发设计 > 正文

线程的控制(常见方法)

2019-11-06 07:36:12
字体:
来源:转载
供稿:网友

线程的控制(常见方法)

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

A:休眠线程

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

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

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

Eg:Thread.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();

}

}

 


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表