run method
Runs callback and adds events to stream.
Implementation
@override
void run(FutureOr<void> Function() callback) {
if (current.state.isReady) {
try {
_add(busy);
callback();
_add(delaying);
} catch (error, stacktrace) {
_controller.addError(error, stacktrace);
} finally {
_timer = Timer(duration, () {
_add(ready);
});
}
}
}