Copy & Paste Engineer

【Dart】遅延実行する方法

【Dart】遅延実行する方法

Dart で遅延実行する方法

サンプル

Future.delayed を使用します。 DartPad を使用すればブラウザ上で下記のコードを実行して確認できます。

サンプルは4種類の書き方を行っています。

import 'dart:async';

void main() async {
  print("Start:" + DateTime.now().toString());

  // 3秒後に実行 引数
  Future.delayed(Duration(seconds: 3), () {
    print("delayed computation:" + DateTime.now().toString());
  });

  // 3行後に実行 then
  Future.delayed(Duration(seconds: 3)).then((_) {
    print("delayed then:" + DateTime.now().toString());
  });

  // 3秒後に実行 then メソッドチェーン
  Future.delayed(Duration(seconds: 1))
      .then((_) => print('delayed then methodchain1:' + DateTime.now().toString()))
      .then((_) => print('delayed then methodchain2:' + DateTime.now().toString()));

  // 3秒間待たせて後述のコードを実行させる
  await Future.delayed(Duration(seconds: 3));
  print("delayed await:" + DateTime.now().toString());
}

参考