1.多线程简介

1.完成一个线程的实际功能的代码放在run方法中,run方法可以在thread的一个子类中重写,有也可以在Runnable对象中重写,

2.通过start方法可以启动一个新线程,当使用start方法启动了新线程后,程序控制立即返回调用者,然后新线程和调用者就可以并发地执行。如何用start启动一个已经启动的线程,就会引发IllegalStateExecption的异常。

3.static sleep方法带有一个参数,制定当前执行线程的睡眠时间;当一个线程处于睡眠状态的时候,它不会争夺处理器,以便其他线程能否继续执行,

4.interrupt方法用于中断一个线程,如果某个线程已经中断,那么interrupt方法(static方法)将返回true值,否者返回false,用isInterrupted方法(非static)可以判断某个线程是否中断,

5.suspend方法用于执行线程挂起,而resume方法用于恢复挂起的线程。

6.stop方法用来停止一个线程,并引发一个ThreadDeath对象。

7如果某个线程已经调用了start方法,但是还没有调用stop方法。那么isAlive方法将返回true值。

8.setName方法用来设置线程的名称,getName方法用来返回线程的名称。toString方法则返回一个字符串,其中包括线程的名称,线程的优先级以及线程所在的线程组。

9.static的方法currentThread用来返回对当前Thread的一个引用。

10.join方法(带有一个参数,表示时间长度,单位为毫秒)用于等待目标线程接收终止信息,以执行当前线程。如果join方法没有参数或者参数为0毫秒,则表示当前线程一直等待下去,知道目标线程结束才能继续执行,。这回导致死锁 和无限延时。

原文地址:https://www.cnblogs.com/caimuqing/p/6121050.html