Callbacks and Recursive Dispatch

When designing application callbacks, do not recursively dispatch the same event queue.

Illegal  Dispatch of queue A invokes a callback that dispatches queue A.

Legal  Dispatch of queue A invokes a callback that dispatches queue B.

Illegal  Dispatch of queue A invokes a callback that dispatches queue B, which invokes a callback that dispatches queue A again.