Handles uncaught asynchronous errors.
There are two kind of asynchronous errors that are handled by this
1. Uncaught errors that were thrown in asynchronous callbacks, for example,
throw in the function passed to Timer.run.
2. Asynchronous errors that are pushed through Future and Stream
chains, but for which no child registered an error handler.
Most asynchronous classes, like Future or Stream push errors to their
listeners. Errors are propagated this way until either a listener handles
the error (for example with Future.catchError), or no listener is
available anymore. In the latter case, futures and streams invoke the
By default, when handled by the root zone, uncaught asynchronous errors are treated like uncaught synchronous exceptions.
/*=R*/ handleUncaughtError/*<R>*/(error, StackTrace stackTrace);