Здравствуйте, NightBlade, Вы писали:
NB>NB>bool flags[n];
NB>while(true) {
NB> ret = WaitForMultipleObjects(O1 | O2 | ... | On | Om);
NB> if (ret == Om) {
NB> doWork();
NB> break;
NB> } else if (ret == TIMEOUT) {
NB> break;
NB> } else {
NB> flags[ret] = true;
NB> if (flags.isAllSet()) {
NB> doWork();
NB> break;
NB> }
NB> }
NB>}
NB>
NB>ага...
NB>только если несколько объектов изменит свое состояние между вызовами WaitForMultipleObjects, то она вернет только один и флаги никогда не будут выставлены
вообще — да. но только если это не manual-reset event