Timer constructor Null safety

  1. Duration duration,
  2. void callback(

    Creates a new timer.

    The callback function is invoked after the given duration.


    final timer =
        Timer(const Duration(seconds: 5), () => print('Timer finished'));
    // Outputs after 5 seconds: "Timer finished".


    factory Timer(Duration duration, void Function() callback) {
      if (Zone.current == Zone.root) {
        // No need to bind the callback. We know that the root's timer will
        // be invoked in the root zone.
        return Zone.current.createTimer(duration, callback);
      return Zone.current
          .createTimer(duration, Zone.current.bindCallbackGuarded(callback));