標頭檔案:#include
sem_init
函式的作用:初始化訊號量
原型:int sem_init(sem_t *sem,int pshared,unsigned int value)
引數:sem:訊號量指標
pshared:0
value:訊號量的初始化
返回值:成功:0,出錯-1
訊號量的pv操作,銷毀
函式原型:
/*p操作*/
int sem_wait(sem_t *sem);
int sem_trywait(sem_t *sem);
/*v操作*/
int sem_post(sem_t *sem);
//獲取訊號量的值
int sem_getvalue(sem_t *sem);
//銷毀訊號量
int sem_deatroy(sem_t *sem);
引數:sem:訊號量指標
返回值:成功為0,出錯為-1
使用pv操作,完成生產者和消費者之間
#include
#include
#include
#include
#include
#include
#include
char buff[100];
sem_t mutex,full;
int fd;
void productor(void *arg)
}void customer(void *arg)
}int main()
pthread_create(&id1,null,(void*)productor,null);
pthread_create(&id2,null,(void*)customer,null);
pthread_join(id1,null);
pthread_join(id2,null);
return
0;}
程序 執行緒 執行緒池的相關知識
什麼是程序,什麼是執行緒 程序是資源分配的最小單位,執行緒是cpu排程的最小單位 乙個應用程式的執行就可以被看做是乙個程序,而執行緒是執行中的實際的任務執行者。可以說,程序中包含了多個可以同時執行的執行緒。我們在建立執行緒池的時候一般使用它的子類threadpoolexecutor.public t...
多執行緒 相關知識
多執行緒 目標程序 執行緒程序 對應的就是計算機中執行的應用程式 process p new process p.startinfo.filename notepad.exe p.start 通過例項物件來開啟記事本 process ps process.getprocesses foreach p...
執行緒程式設計相關知識
一 讀寫鎖 讀寫鎖 rwlock 功能特點簡介 讀寫鎖實際是一種特殊的 自旋鎖,它把對共享資源的訪問者劃分成讀者和寫者,讀者只對共享資源進行讀訪問,寫者則需要對共享資源進行寫操作。這種鎖相對於 自旋鎖而言,能提高 併發性,因為在 多處理器系統中,它允許同時有多個讀者來訪問共享資源,最大可能的讀者數為...