Linux多线程开发-线程同步-互斥锁pthread_mutex_t
生活随笔
收集整理的這篇文章主要介紹了
Linux多线程开发-线程同步-互斥锁pthread_mutex_t
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、互斥鎖
同一時刻只允許一個線程對臨界區進行訪問。POSIX庫中用類型pthread_mutex_t來定義互斥鎖,類型在pthreadtypes.h中定義。
2、如何聲明一個互斥鎖
#include <pthread.h>pthread_mutex_t mutex;3、如何初始化一個互斥鎖
//靜態初始化互斥鎖 pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;//動態初始化互斥鎖 pthread_mutex_t mutex; pthread_mutex_init(&mutex,NULL);靜態初始化的互斥鎖不需要銷毀,動態初始化的互斥鎖需要銷毀,銷毀函數聲明如下:
int pthread_mutex_destroy(pthread_mutex_t *mutex);4、如何上鎖和解鎖
//上鎖方式1,程序進入臨界區,如果已經上鎖,則阻塞等待 int pthread_mutex_lock(pthread_mutex_t *mutex);//上鎖方式2,程序進入臨界區,如果已經上鎖,不阻塞,返回EBUSY int pthread_mutex_trylock(pthread_mutex_t *mutex);//解鎖,程序退出臨界區 int pthread_mutex_unlock(pthread_mutex_t *mutex);?
總結
以上是生活随笔為你收集整理的Linux多线程开发-线程同步-互斥锁pthread_mutex_t的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python模型_python 模型的释
- 下一篇: jvm内存结构_浅谈JVM内存结构