1、线程状态
2、常用函数
常用方法网上大多数说的含糊不清,自己敲了下代码理解了一遍,大意如下,确保不会出错
join() 执行完当前线程后再执行之后的线程,需要用在该线程的start方法之后,如果之前有线程已经start,不影响前面的线程
static yield() 使该线程从运行状态变为就绪状态,与其他线程一起竞争资源
static sleep(long xx ms) 使该线程沉睡XX ms,之后继续执行,不释放资源,也就是说XX ms过后可以直接继续执行
wait() 使该线程等待,会释放资源,进入阻塞状态
notify/notifyAll 唤醒调用了wait()方法的线程,使该线程进入就绪状态
interrupt() 如果线程非阻塞,则将中断状态改为true;如果阻塞,抛出InterruptedException异常,同时将中断状态改为false
static interrupted() 先返回当前线程中断状态,再将当前线程中断状态复位,即中断状态改为false,注意是静态方法,所以在main中调用时,当前线程是守护线程main
isInterrupted() 返回中断状态;