deferredLog function
Builds and prints message after the caller returns, in small slices between frames, so console logging never stalls a request or a frame.
Implementation
void deferredLog(String Function() message, {String name = ''}) {
if (_pending.length >= _maxPending) {
_pending.removeFirst();
_dropped++;
}
_pending.add((message, name));
if (_draining) return;
_draining = true;
Timer.run(_drain);
}