关于Critical Section的问题
luou 2001-09-04 11:04:41 正在做Critical Section ,开了四个线程,在一个窗口的内做不同的动作,第一个线程里面调用InitializeCriticalSection(&cs)建立一个CriticalSection,然后另外的线程依次用TryEnterCriticalSection访问一个全局变量iCriticalSectionNo;
: if(TryEnterCriticalSection(&cs))
{
Sleep(SLEEP_TIME);
hdc = GetDC (pparams->hwnd) ;
GetClientRect(pparams->hwnd,&rect);
iCriticalSectionNo ++;
wsprintf(szBuffer,TEXT("%d"),iCriticalSectionNo);
DrawText(hdc,szBuffer,-1,&rect,DT_VCENTER||DT_CENTER);
LeaveCriticalSection(&cs);
}
运行后程序占用90%的CPU,停不下来,知道最后说我虚拟内存不够为止(256M)
不知道问题出在哪里,请指教