ps -lf pid
//檢視程序
ps -elf
//檢視全部執行緒
gcc test.c -lpthread 編譯需要鏈結pthread 庫
//獲取當前程序的id
getpid();
//獲取當前執行緒的id
pthread_self();
//建立執行緒1.執行緒識別符號2.執行緒屬性3.執行緒處理函式4.函式的引數
pthread_create(&tid,null,fun,null);
//執行緒退出函式
pthread_exit((void*)2);
//任何執行緒呼叫都會使程序退出
exit(1);
//(分離態) 過的執行緒無法 pthread_join(**)//此執行緒結束馬上被**占用資源
pthread_detach(tid);
//理解:主線程等待子執行緒的終止。也就是在子執行緒呼叫了pthread_join()方法後面的**,只有等到子執行緒結束了才能執行。
pthread_join(tid, &tret);
//取消某個執行緒,但是得等到下次檢測該執行緒才正真**資源//待測試
pthread_cancel(tid);
//初始化執行緒屬性
pthread_attr_init(attr);
//銷毀執行緒屬性所占用的資源
pthread_attr_destroy(attr);
//設定執行緒分離態屬性//第二個為傳入引數
pthread_attr_setdetachstate(attr, detachstate);
//獲取執行緒分離態屬性//第二個為傳出引數
pthread_attr_getdetachstate(attr, detachstate);
//設定執行緒棧的位置和大小
pthread_attr_setstack(&attr,&stackaddr,size);
//獲取執行緒的位置和大小
pthread_attr_setstack(&attr,&&stackaddr, &size);
執行緒基礎3 執行緒中斷
已經過時的方法 暫停 suspend 恢復 resume 停止 stop 過時原因 suspend 方法在呼叫後,執行緒不會釋放已經占有的資源 比如鎖 而是占有著資源進入睡眠狀態,這樣容易引發死鎖問題。stop 方法在終結乙個執行緒時不會保證執行緒的資源正常釋放。執行緒中斷的三個方法 注意 執行緒在...
執行緒基礎與執行緒同步
二 執行緒同步 我們都知道,程序是運轉中的程式,是為了在cpu上實現多道程式設計而發明的乙個概念。但是程序在乙個時間只能幹一件事情,如果想要同時幹兩件或者多件事情,例如同時看兩場電影,我們自然會想到傳說中的分身術,就像孫悟空那樣可以變出多個真身。雖然我們在現實中無法分身,但程序卻可以辦到,辦法就是執...
執行緒基礎 實現多執行緒
public class thread01 extends thread public static void main string args public class thread02 implements runnable public static void main string args...