線程中斷
方法:void interrupt():中斷線程(本質沒有中斷操作,只是給線程對象加了個標記,設置其中斷狀態(tài)為true);
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(不能中斷正在運行過程中的線程,只能中斷阻塞過程中的線程)
? ? ? ? ? ?static boolean interrupted(): 返回當前線程是否已經中斷;
? ? ? ? ? ?boolean isInterrupted():?返回線程是否已經中斷;

線程讓步
作用:用于正在執(zhí)行的線程,在某些情況下讓出CPU資源,讓給其它線程執(zhí)行;
? ? ? ? ? ? (如果持有同步鎖,并不會釋放同步鎖資源)
方法:static void yield():暫停當前正在執(zhí)行的線程對象,并執(zhí)行其他線程

線程睡眠
方法:static void sleep(long millis):讓當前正在執(zhí)行的線程休眠(暫停執(zhí)行)指定的毫秒數(shù);
? ? ? ? ? ?static void sleep(long millis, int nanos):線程休眠 毫秒數(shù)+納秒數(shù);

線程合并
作用:所謂合并,就是等待其它線程執(zhí)行完,再執(zhí)行當前線程,執(zhí)行起來的效果就好像把其它線程合并到當前線程執(zhí)行一樣;
? ? ? ? ? ? (優(yōu)先執(zhí)行調用join方法的線程,最后執(zhí)行當前線程)
方法:void join():等待該線程終止;
? ? ? ? ? ?void join(long millis):等待該線程終止的時間最長為 millis 毫秒;
? ? ? ? ? ?void join(long millis, int nanos):等待該線程終止的時間最長為 millis 毫秒 + nanos 納秒;

sleep和wait方法區(qū)別
sleep:1.Thread的方法
? ? ? ? ? ? ?2.讓出CPU,時間到了再回到該線程繼續(xù)執(zhí)行,不會釋放同步鎖資源
? ? ? ? ? ? ?3.任何地方使用
wait:1.Object的方法
? ? ? ? ? 2.釋放同步鎖資源,進入等待隊列,需要notify喚醒(喚醒后只是得到競爭同步鎖的資格) ?
? ? ? ? ? 3.只能在同步方法或同步塊中使用(因為要釋放同步資源鎖)