主线程和子线程的关系问题
gpmn 2001-07-13 11:53:02 假如有一个信号量hMutex,子线程首先进入,在该子线程退出之前、且释放资源hMutex之前,如果主线程开始执行,并用
WaitForsingleObject(hMutex,INFINIT)等待,是不是子线程也被置于等待状态?
这时是不是就处于死锁状态????又、主线程创建该子线程;
ChildThread()
{
WaitForsinglObject(hMutex,INFINIT);
,,,,,
,,,,,
ReleaseMutex(hMutex);
}
MainProc
{
AfxBegingThread(ChildThread);
....
....
WaitForsinglObject(hMutex,INFINIT);//如果子线程仍然在执行且没有释放资源怎么办???????
,,,,,
,,,,,
ReleaseMutex(hMutex);
}
我的程序看起来就象是主线程进入等待以后,子线程也同时被刮起;不知道是不是这个原因;
如果果然如我猜测,怎么在主线程和子线程之间同步,而且主线程挂起时,子线程一样可以运行;(理论上说,主子线程之间不该这样影响啊)