Currently the example watcher waits for 1 second to make sure that the events are dispatched from the queue, would be nice if we could have a "wait for queue to empty" function which waits for the queue to empty if connected and instantly return if queue isn't running.