多執行緒之執行緒的狀態有幾種

2022-08-11 18:03:11 字數 482 閱讀 6494

執行緒從生到死有幾種狀態:

建立(new)------就緒start-----------執行running-----------阻塞sleep----------死亡dead

cpu呼叫執行緒是從可排程執行緒池中呼叫, 當執行緒阻塞時會移出可排程執行緒池。

執行緒是不能直接從阻塞狀態直接變成執行狀態的, 需要先變成就緒狀態,當cpu呼叫該執行緒時, 就會變成執行狀態。

控制線程的狀態:

1,啟動執行緒 

-(void)start;

2,阻塞執行緒

+(void)sleepfortimeintelcal:(nstimeinterval)ti

+(void)sleepunitildate:(nsdate *)date;

3, 強制退出執行緒

+(void)exit;

多執行緒之執行緒同步

pulse lockobj 表示釋放當前被lock的lockobj,容許其他執行緒呼叫。相當於暫時掛起當前執行緒 wait lockobj 表示等待當前被其他執行緒占用的lockobj。下面的 將會交替執行兩個執行緒 class ticktock console.write tick monitor...

多執行緒之執行緒池

執行緒框架關係 executor 介面 executorservice 介面 繼承 executor abstractexecutorservice 抽象類 實現 executorservice threadpoolexecutor 繼承abstractexecutorservice 過載一系列方法...

多執行緒之執行緒池

首先說一說執行緒池的優點 方便管理,監控執行緒狀態 提高執行緒響應速度 執行緒可以重複使用 executorservice普通排程池核心介面 submit runnable callable future execute runnable void 執行緒池工作流程 當任務到達執行緒池時的工作順序,...