Comportamento de WaitForMultipleObjects quando vários identificadores de sinal ao mesmo tempo

Given: preencho uma matriz de identificadores com eventos de redefinição automática e transmito para WaitForMultipleObjects com bWaitAll = FALS

Do MSDN: “Quando bWaitAll é FALSE, essa função verifica as alças na matriz em ordem começando no índice 0, até que um dos objetos seja sinalizado. Se vários objetos forem sinalizados, a função retornará o índice do primeiro identificador na matriz cujo objeto foi sinalizado. ”

Então, agora, se vários objetos sinalizarem, receberei o índice do primeiro. Preciso fazer um loop na minha matriz para ver se outras pessoas sinalizaram?

gora, eu tenho um loop ao longo das linhas de:

For ( ; ; )
{
WaitForMultipleObjects(…)
If  (not failed)
     Process object that called. 
     Remove the handle that signaled from the array.
     Compact the arrary.
}

questionAnswers(4)

yourAnswerToTheQuestion