VC++常用功能封装代码一系列文章与源码 (打广告,哈哈,看看一系列再决定要不要订阅)
https://blog.csdn.net/kaizi318/article/details/108846326
源代码demo已上传到百度网盘:永久生效 ,代码封装了 线程函数读、写 加锁功能,支持跨平台,绝对好用
直接上代码 看封装类的头文件
#ifndef __CLOCKX__
#define __CLOCKX__
#ifdef WIN32
#include <Windows.h>
#else
#include <pthread.h>
#endif
class CLockX
{
public:
CLockX();
CLockX(const CLockX &); // 只是初始化, 和默认构造函数功能一样, 为了适应STL. 一个锁对象的赋值是没有意义的
~CLockX();
// 读锁. 要成对调用.
void rLock();
void rUnlock();
// 写锁. 要成对调用.
void wLock();
void wUnlock();
private:
unsigned long m_uReadCount; // 读锁的计数
#ifdef _WIN32
CRITICAL_SECTION m_rCS; // 读锁