currentThread()
currentThread()方法可返回代码段正在被哪个线程调用的信息。
isAlive()
方法isAlive()的功能是判断当前的线程是否处于活动状态。
什么是活动状态?
活动状态就是线程已经启动且尚未终止。线程处于正在运行或准备开始运行的状态,就认为线程是“存活”的。
sleep方法
作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行)。
这个“正在执行的线程”是指this.currentThread()返回的线程。
getId()方法
作用是取得线程的唯一标识。
停止线程
停止一个线程意味着在线程处理完任务之前停掉正在做的操作,也就是放弃当前的操作。
一般有3种方法可以终止正在运行的线程:
1)使用退出标志,使线程正常退出,也就是当run方法完成后线程终止。
2)使用stop方法强行终止线程,但是不推荐使用这个方法,因为stop和suspend及resume一样,都是作废过期的方法,使用它们可能产生不可预料的结果。
3)使用interrupt方法中断线程。(但是这个方法不会终止一个正在运行的线程,还需要加入一个判断才可以完成线程的停止。)
调用interrupt()方法仅仅是在当前线程中打一个停止的标记,并不是正当停止线程。
1)this.interrupted():测试当前线程是否已经是中断状态,执行后具有将状态标志置为false的功能。
2)this.isInterrupted():测试线程Thread对象是否已经是中断状态,但不清楚状态标志。