kevent returns immediately if (1) event list is empty or (2) changelist is NOT empty. This forces CPU on mac to be very high because this becomes a hot loop.