scheduler library Null safety

The Flutter Scheduler library.

To use, import package:flutter/scheduler.dart.

This library is responsible for scheduler frame callbacks, and tasks at given priorities.

The library makes sure that tasks are only run when appropriate. For example, an idle-task is only executed when no animation is running.

Classes

DiagnosticsNode
Defines diagnostics data for a value.
Flow
A class to represent Flow events.
FrameTiming
Time-related performance metrics of a frame.
Priority
A task priority, as passed to SchedulerBinding.scheduleTask.
Ticker
Calls its callback once per animation frame.
TickerFuture
An object representing an ongoing Ticker sequence.
TickerProvider
An interface implemented by classes that can vend Ticker objects.

Mixins

SchedulerBinding
Scheduler for running the following:

Properties

debugPrintBeginFrameBanner bool
Print a banner at the beginning of each frame.
read / write
debugPrintEndFrameBanner bool
Print a banner at the end of each frame.
read / write
debugPrintScheduleFrameStacks bool
Log the call stacks that cause a frame to be scheduled.
read / write
timeDilation double
Slows down animations by this factor to help in development.
read / write

Functions

debugAssertAllSchedulerVarsUnset(String reason) bool
Returns true if none of the scheduler library debug variables have been changed.
defaultSchedulingStrategy({required int priority, required SchedulerBinding scheduler}) bool
The default SchedulingStrategy for SchedulerBinding.schedulingStrategy.

Enums

AppLifecycleState
States that an application can be in.
SchedulerPhase
The various phases that a SchedulerBinding goes through during SchedulerBinding.handleBeginFrame.

Typedefs

FrameCallback = void Function(Duration timeStamp)
Signature for frame-related callbacks from the scheduler.
SchedulingStrategy = bool Function({required int priority, required SchedulerBinding scheduler})
Signature for the SchedulerBinding.schedulingStrategy callback. Called whenever the system needs to decide whether a task at a given priority needs to be run.
TaskCallback<T> = T Function()
Signature for SchedulerBinding.scheduleTask callbacks.
TickerCallback = void Function(Duration elapsed)
Signature for the callback passed to the Ticker class's constructor.
TimingsCallback = void Function(List<FrameTiming> timings)
Signature for PlatformDispatcher.onReportTimings.
VoidCallback = void Function()
Signature of callbacks that have no arguments and return no data.

Exceptions / Errors

TickerCanceled
Exception thrown by Ticker objects on the TickerFuture.orCancel future when the ticker is canceled.