Originally posted by oiaohm
View Post
Every programmer who has used both cooperative and preemptive multitasking would ask this question, wouldn't they?
Originally posted by oiaohm
View Post
Previously I was assuming that Windows has ReadEvent because the email proposal has NTSYNC_IOCTL_READ_EVENT. So I was wondering if you think that threads may call ReadEvent afterwards and do the wrong thing if ReadEvent returns the event state non-signaled. But I can't find any reference to anything like ReadEvent in Windows documentations. So, in which way do threads depend on the event being SET afterwards? Do you have an example that's just 5 lines of code or so?
Originally posted by oiaohm
View Post
Originally posted by oiaohm
View Post
No, it does *not* say that the event remains signaled after NTPulseEvent is complete. On the contrary, it says that the event will get reset right after releasing the waiting threads, by NTPulseEvent itself. Is there some other documentation that you have not linked?
For ease of reference, I'll repeat your quote here:
Function sets event to signaled state, releases all (or one - dependly of EVENT_TYPE) waiting threads, and resets event to non-signaled state. If they're no waiting threads, NtPulseEvent just clear event state.
Comment