runDelayed method

String runDelayed(
  1. Function runnable, {
  2. Duration delay = Duration.zero,
  3. String? tag,
})

延时执行

Implementation

String runDelayed(
  Function runnable, {
  Duration delay = Duration.zero,
  String? tag,
}) {
  assert(delay.inMilliseconds >= 0, 'delay must >= 0.');
  // 检查标签
  tag = _checkedTag(tag);
  // 启动线程
  var thread = Timer(delay, () {
    // 执行完毕并移除线程
    runnable.call();
    removeThread(tag!);
  });
  // 缓存信息
  _threads.put(tag, thread);
  return tag;
}