3 Star 2 Fork 5

张远浩/call_demo_server

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Lock.h 1.17 KB
一键复制 编辑 原始数据 按行查看 历史
zhangyuanhao 提交于 2015-08-15 22:38 . [MOD] 修改实现
/*================================================================
* Copyright (C) 2014 All rights reserved.
*
* 文件名称:Lock.h
* 创 建 者:Zhang Yuanhao
* 邮 箱:bluefoxah@gmail.com
* 创建日期:2014年09月10日
* 描 述:
*
#pragma once
================================================================*/
#ifndef __LOCK_H__
#define __LOCK_H__
#include "ostype.h"
class CLock
{
public:
CLock();
virtual ~CLock();
void lock();
void unlock();
pthread_mutex_t& getMutex() { return m_lock; }
#ifndef _WIN32
virtual bool try_lock();
#endif
private:
#ifdef _WIN32
CRITICAL_SECTION m_critical_section;
#else
pthread_mutex_t m_lock;
#endif
};
#ifndef _WIN32
class CRWLock
{
public:
CRWLock();
virtual ~CRWLock();
void rlock();
void wlock();
void unlock();
bool try_rlock();
bool try_wlock();
private:
pthread_rwlock_t m_lock;
};
class CAutoRWLock
{
public:
CAutoRWLock(CRWLock* pLock, bool bRLock = true);
virtual ~CAutoRWLock();
private:
CRWLock* m_pLock;
};
#endif
class CAutoLock
{
public:
CAutoLock(CLock* pLock);
virtual ~CAutoLock();
private:
CLock* m_pLock;
};
#endif
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/bluefoxah/call_demo_server.git
git@gitee.com:bluefoxah/call_demo_server.git
bluefoxah
call_demo_server
call_demo_server
master

搜索帮助