C++ Primer笔记(3)
来源:互联网 发布:ubuntu手机壁纸 编辑:程序博客网 时间:2024/06/18 03:58
SRWLock允许我们区分那些想要读取资源的值的线程(读取者线程)和想要更新资源的值的线程(写入者线程)。
让所有的读取者线程在同一时刻访问共享资源是可行的,因为不存在破坏数据的风险。
只有当写入者想要对资源进行更新的时候才需要进行同步。这种情况下,写入者线程应该独占对资源的访问权:
VOID AcquireSRWLockShared(PSRWLOCK SRWLock);
VOID ReleaseSRWLockShared(PSRWLOCK SRWLock);
不支持的:不能递归获得SRWLOCK,一个线程不能为了多次写入资源而多次锁定资源,然后多次释放。
让所有的读取者线程在同一时刻访问共享资源是可行的,因为不存在破坏数据的风险。
只有当写入者想要对资源进行更新的时候才需要进行同步。这种情况下,写入者线程应该独占对资源的访问权:
任何其它线程,无论是读取者还是写入者线程,都不允许访问资源。
初始化
VOID InitializeSRWLock(PSRWLOCK SRWLock);
完成对资源的更新之后,应该调用ReleaseSRWLockExclusive完成对资源的锁定。
VOID AcquireSRWLockShared(PSRWLOCK SRWLock);
VOID ReleaseSRWLockShared(PSRWLOCK SRWLock);
不支持的:不能递归获得SRWLOCK,一个线程不能为了多次写入资源而多次锁定资源,然后多次释放。
- 《C Primer Plus》阅读笔记(3)
- C++Primer学习笔记(3)
- c++primer笔记(1)
- C++Primer 笔记(2)
- C++Primer笔记(三)
- C++primer笔记(四)
- C++Primer笔记(五)
- C++primer笔记(六)
- C++primer笔记(七)
- c++Primer笔记(11)
- c++Primer笔记(15)
- c++primer 笔记(一)
- C++Primer 笔记(一)
- C++primer笔记(21)
- 学习笔记(C++primer)
- 《C++Primer》学习笔记3--:第二章(P42-P65)
- 笔记(3)递归思想--C Primer Plus
- C++Primer笔记3(第四章-数组和指针)
- [ExtNet] GridPanel怎么实现服务器端分页、排序、查询?--Oracel存储过程分页
- svn详细配置
- 在存储过程中输入输出游标
- poi的导出excel(直接下载)
- compile module with freescale LTIB
- C++ Primer笔记(3)
- ISTQB FL初级认证考试必备知识
- 享受寂寞
- 泛型之日期转换
- HDU 1088 处理每个字符串比直接用getchar处理简单
- linux下安装sendEmail
- Winform 代码编辑器 --将字符串编译成dll
- JS实现倒计时
- 安装、卸载windows服务