您的位置:首页 > 编程语言 > C语言/C++

关于CRITICAL_SECTION的一些理解

2015-02-11 09:57 260 查看
CRITICAL_SECTION 本质上来说就是一个互斥锁,用法如下:

1.声明一个CRITICAL_SECTION对象:CRITICAL_SECTION g_cs;一个数组对象:int a[10];

2.初始化临界区:InitializeCriticalSection(&g_cs);

3.在所有需要对数组a[10]进行操作的地方,操作前加入:EnterCriticalSection(&g_cs);操作后加入:LeaveCriticalSection(g_cs);来保证在操作之前,已经问过互斥锁了。

个人理解:

CRITICAL_SECTION对象其实更 倾向于一个平时所用的flag变量的作用,并不是说真的把某些资源锁定住了(因为并没有函数来直接将该对象与某些资源进行直接绑定),而是通过在访问之前手动的进行询问,来造成了该资源被锁定的“假象”而已。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mfc vc++