创建定时器处理程序 typedef

创建定时器处理程序 = Timer Function(Zone self, ZoneDelegate parent, Zone zone, Duration duration, void f())

自定义Zone.createTimer实现函数的类型。

接收处理程序注册的Zone作为self,将请求委派给self父区处理程序的ZoneDelegate作为parent,以及错误未被捕获的当前区作为zone,它将以self作为父区。

回调函数fduration是传递给zoneZone.createTimer(可能通过Timer构造函数)的。

自定义处理程序可以选择用另一个函数替换f,该函数在调用f之前、之后或代替调用f,然后调用parent.createTimer(zone, replacement)。或者它可以实现自己的定时器队列,这通常仍然依赖于parent.createTimer作为启动方式。

函数应返回一个Timer对象,该对象可以用来检查和控制已安排的定时器回调。

函数只能通过selfparentzone访问与区域相关的功能。它不应依赖于当前区域(Zone.current)。

实现

typedef CreateTimerHandler = Timer Function(Zone self, ZoneDelegate parent,
    Zone zone, Duration duration, void Function() f);