多个线程调度顺序的问题
window下,有四个等级相同的线程:A,B,C,D
A()
{
WaitForSingleObject(mHmutex1)
...//
ReleaseMute(mHmutex1)
sleep(0);
}
B()
{
WaitForSingleObject(mHmutex2)
...//
ReleaseMute(mHmutex2)
sleep(0);
}
C()
{
WaitForSingleObject(mHmutex3)
...//
ReleaseMute(mHmutex3)
sleep(0);
}
D()
{
WaitForSingleObject(mHmutex4)
...//
ReleaseMute(mHmutex4)
sleep(0);
}
请问:
1.如果程序在运行A线程,执行到sleep(0)时,系统会不会肯定去调用别的线程?
2.如果A成立,这四个线程调用肯定按序进行吗,也就是每调用这里面四个线程,肯
定四个线程都能保证被调用一次吗?(四个线程申请的不是同一个信号量)