我使用了一个全局变量,该线程被循环调用,我怕全局变量的值被反复修改,就想在给他赋直到存入数据库这段代码设定一个临界点我是这样的
CCriticalSection g_section;
g_section.Lock();
..........
..........
g_section.Unlock()可是提示没有这个类啊,MSDN上有啊,
谁能告诉我,或者给个例子

解决方案 »

  1.   

    //线程同步
    #include <Afxmt.h>定义一个同步对象如:CCriticalSection m_DataLock;
    m_DataLock.Lock();
    ...//对数据库的操作
    m_DataLock.UnLock();//对数据库操作完成后退出临界区对象
      

  2.   

    // first
    CRITICAL_SECTION m_csFileHandle;
    InitializeCriticalSection(&m_csFileHandle);// 2nd
    EnterCriticalSection(&m_csFileHandle);
    fclose(m_fpRecordFile);
    m_fpRecordFile = NULL;
    LeaveCriticalSection(&m_csFileHandle);// 3nd
    DeleteCriticalSection(&m_csFileHandle);