Update dispatching mechanism add shutdown callback.
Let workers pull work from the queue to reduce signaling overhead.