?? c_mutex.cpp
字號:
#include "c_mutex.h"
//將鎖進行初始化
void c_mutex::init()
{
pthread_mutexattr_t _attr;
pthread_mutexattr_init(&_attr);
pthread_mutexattr_setpshared( &_attr, PTHREAD_PROCESS_SHARED );
pthread_mutex_init(_mutex, &_attr);
pthread_mutexattr_destroy(&_attr);
}
//1-鎖成功 0--未成功
bool c_mutex::tryEnterMutex(void)
{
return (pthread_mutex_trylock(_mutex) == 0) ? true : false;
}
void c_mutex::enterMutex(void)
{
pthread_mutex_lock(_mutex);
}
void c_mutex::leaveMutex(void)
{
pthread_mutex_unlock(_mutex);
}
c_mutex::c_mutex()
{
}
c_mutex::~c_mutex()
{
//pthread_mutex_destroy(_mutex);
}
bool c_mutex::unlockMutex(int times)
{
int i;
for( i = 0; i < times; i++)
{
if( tryEnterMutex() == 1 )
{
break;
}
else
{
sleep(1);
}
}
leaveMutex();
return true;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -