current property
Returns the currently running task.
If no explicit task is currently running, the synthetic task main() is
returned.
Implementation
@awaitNotRequired
static AnyTask get current {
final zone = Zone.current;
if (identical(zone, Zone.root)) {
return _main;
}
AnyTask? task = zone[_taskKey] as AnyTask?;
if (task != null) {
return task;
}
task = _tempTasks[zone];
if (task != null) {
return task;
}
task = Task<void>._raw(TaskState.running);
_tempTasks[zone] = task;
return task;
}