我们也可以通过临界区保证在同一时间内只有一个线程对共享数据进行控制访问。临界区不是内核对象,只能对进程内部的线程进行同步。
临界区对象是定义在数据段中的一个CRITICAL_SECTION结构,Windows内部使用这个结构记录的一些信息,来确保同一个时间只有一个线程访问该临界区保护的数据。
临界区对象使用要调用的函数接口如下:
(1)InitializeCriticalSection()
void WINAPI InitializeCriticalSection(
_Out_ LPCRITICAL_SECTION lpCriticalSection
);
//lpCriticalSection:指向临界区对象的指针
创建CRITICAL_SECTION对象后,需要调用该函数进行临界区对象的初始化。任何线程在试图访问临界区所保护的资源之前,CRITICAL_SECTION结构对