书P205:volatile bool g_fFinishedCalculation = false;int WINAPI _tWinMain(...)
{
CreateThread(... , RecalcFunc , ...);
//...
while (!g_fFinishedCalculation)
; // ....
}DWORD RecalcFunc(PVOID pvParam)
{
g_fFinishedCalculation = true;return 0;
}对于这段代码,书上说,如果_tWinMain优先级比RecalcFunc的高,那么g_fFinishedCalculation = true;可能永远不会执行请问,这个“可能”是否指的是当_tWinMain的优先级大于15的时候才会发生?因为书前面说(P186)的是,当一个线程因为自己的优先级比其他线程的高而饥饿了几秒时,系统会将它的优先级动态提升至15,以获得运行的机会
{
CreateThread(... , RecalcFunc , ...);
//...
while (!g_fFinishedCalculation)
; // ....
}DWORD RecalcFunc(PVOID pvParam)
{
g_fFinishedCalculation = true;return 0;
}对于这段代码,书上说,如果_tWinMain优先级比RecalcFunc的高,那么g_fFinishedCalculation = true;可能永远不会执行请问,这个“可能”是否指的是当_tWinMain的优先级大于15的时候才会发生?因为书前面说(P186)的是,当一个线程因为自己的优先级比其他线程的高而饥饿了几秒时,系统会将它的优先级动态提升至15,以获得运行的机会
========
应该不是
当 RecalcFunc 提升到15的时候, 那_tWinMain 应该要大于15