📄 mux_pthr.cpp
字号:
/************************************************** POSIX Thread Mutex Source File ** (C) 1999-2002 The Botan Project **************************************************/#include <botan/mux_pthr.h>#include <botan/exceptn.h>#include <pthread.h>namespace Botan {/************************************************** Wrapper Type for POSIX Thread Mutex **************************************************/struct mutex_wrapper { pthread_mutex_t mutex; };/************************************************** Constructor **************************************************/Pthread_Mutex::Pthread_Mutex() { mutex = new mutex_wrapper; pthread_mutex_init(&(mutex->mutex), 0); }/************************************************** Destructor **************************************************/Pthread_Mutex::~Pthread_Mutex() { if(pthread_mutex_destroy(&(mutex->mutex))) throw Exception("~Pthread_Mutex: mutex is locked in destructor"); }/************************************************** Lock the Mutex **************************************************/void Pthread_Mutex::lock() { if(pthread_mutex_lock(&(mutex->mutex))) throw Exception("Pthread_Mutex::lock: Error occured"); }/************************************************** Unlock the Mutex **************************************************/void Pthread_Mutex::unlock() { if(pthread_mutex_unlock(&(mutex->mutex))) throw Exception("Pthread_Mutex::unlock: Error occured"); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -