常見執行緒方法

2021-08-27 18:18:27 字數 842 閱讀 1770

1-暫停thread.sleep(1000); 表示當前執行緒暫停1000毫秒,但不會釋放資源,其他執行緒不受影響

thread.sleep(1000);會丟擲interruptedexception 中斷異常,因為當前執行緒sleep的時候,有可能被停止,這時就會丟擲 interruptedexception

2-join,該執行緒加入主線程,只有該執行緒結束時,才會向下走

是說如果之前t1.start,t2.start,try t1.join,兩個都start,但是萬一t2中有個停止,有個if讓他停止了,而喚醒resume再join之後,就只有等t1完了才能執行到那行**讓t2繼續

並且t.join,既然之前t在sleep,其他的也得等到,一直到t執行緒結束

3-執行緒優先順序,讓執行緒的競爭cpu的能力改變

t1.setpriority(thread.max_priority);

t2.setpriority(thread.min_priority);

4-臨時暫停

thread t2= new thread()              }};

5-守護執行緒

相當於後勤,當全部都守護了這個程序就沒了

t1.setdaemon(true);

t1.start();

執行緒常見方法

sleep 當前執行緒暫停 join 將該執行緒加入到當前執行緒中,預設是main setpriority 設定優先順序 yield 臨時暫停 setdaemon 守護執行緒 讓該執行緒每執行一次就暫停一秒 package com.thread.thread4 public class testth...

Linux下執行緒同步的幾種常見方法

linux下提供了多種方式來處理執行緒同步,最常用的是互斥鎖 條件變數和訊號量。一 互斥鎖 mutex 鎖機制是同一時刻只允許乙個執行緒執行乙個關鍵部分的 1.初始化鎖 int pthread mutex init pthread mutex t mutex,const pthread mutex ...

常見執行緒池問題

什麼是執行緒池?執行緒池是一種多執行緒處理形式,處理過程中將任務提交到執行緒池,任務的執行交由執行緒池來管理。如果每個請求都建立乙個執行緒去處理,那麼伺服器的資源很快就會被耗盡,使用執行緒池可以減少建立和銷毀執行緒的次數,每個工作執行緒都可以被重複利用,可執行多個任務。為什麼要使用執行緒池?建立執行...