Qingqing Zhou <zhouqq@cs.toronto.edu> writes:
> I tried to persuade myself that removing all WaitForSingleObjectEx() is
> safe ... the thing is we will false alarm EINTR as Magnus said (details to
> repeat it are list below in case).
Just to repeat myself: there were false alarms before. The interleaving
you describe could equally well happen if a new signal is sent just
after the old code executes WaitForSingleObjectEx and sees that a
previous signal is waiting for it. Both old and new signals can be
cleared by the recipient before the second signal sender gets as far as
setting the event.
regards, tom lane