win32多线程 (二)线程同步之临界区 (critical sections)

时间:2024-01-11 09:30:02

所谓critical sections 意指一小块“用来处理一份被共享之资源”的程序代码。你可能必须在程序的许多地方处理这一块可共享的资源。所有这些程序代
码可以被同一个critical  section 保护起来。为了阻止问题发生,一次只能有一个线程获准进入critical  section 中.critical section 并不是核心对象.使用方法:

CRITICAL_SECTION g_section;

1:初始化 InitializeCriticalSection(&g_section);

2:进入 EnterCriticalSection(&g_section);

....................需要保护的共享资源代码

3: 退出 LeaveCriticalSection(&g_section);

4:使用完后,删除 DeleteCriticalSection(&g_section);