worker wakeup fixup.

allow for issuing worker wakeups to be non blocking. If it would block
then that would mean there are many pending wakeups, so we can ignore
this one as the pipe is full.  I have also increased the number of
wakeups events read from the pipe so that it can empty quicker.