This quick puzzle floated past one of our internal discussion groups.
// in process A hEventA = CreateEvent(NULL, FALSE, TRUE, TEXT("MyNamedEvent")); // in process B hEventB = OpenEvent(EVENT_MODIFY_STATE, FALSE, TEXT("MyNamedEvent")); WaitForSingleObject(hEventB, INFINITE);
In Process B, the OpenEvent
succeeds, but the
WaitForSingleObject
returns immediately instead of
waiting. Explain.
[Correction: I confused the matter by passing TRUE
as
the third parameter, thereby creating an event that is initially
signalled. Change it to FALSE
so that the event
is created non-signalled, in which case the
WaitForSingleObject
would be expected to wait.]
0 comments