现在的位置: 首页 > 综合 > 正文

线程同步 临界区

2013年10月02日 ⁄ 综合 ⁄ 共 355字 ⁄ 字号 评论关闭

临界区同步

/*
    使用说明,在 需要使用的类里面声明 临界区同步类的对象例如
CMyLock
m_Lock_Around;
然后在需要使用的地方调用 例如 
LOCKVAR(m_Lock_Pack);

如果自己手工写临界区步骤
声明一个   CRITICAL_SECTION g_cs;  类型的变量

①、 初始化临界区   ::InitializeCriticalSection(&g_cs); 

②、 进入临界区 ::EnterCriticalSection(&g_cs);     此时其他访问这个临界区的对象只能等待喽

③、 离开临界区  ::LeaveCriticalSection(&g_cs);     这个时候临界区对象释放,其他等待的对象进入

④、 删除临界区  ::DeleteCriticalSection(&m_cs);    不在使用临界区了(删除)

抱歉!评论已关闭.