[Dart]遅延実行をするには?

Dart

どうも、ちょげ(@chogetarou)です。

遅延実行をする方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

遅延実行をする方法は、2つあります。

sleep

1つは、sleep関数を使う方法です。

具体的には、引数に時間を指定したsleep関数を呼び出します。

時間は、Durationで指定します。

sleep(Duration(・・・)) //Durationで時間を指定

sleepメソッドは、指定した時間を処理を遅延させます。

使用例

import 'dart:io';

void main() {
  print('Hello');
  sleep(Duration(seconds: 5)); //5秒遅延
  print('World')
}

Future.delayed

もう1つは、Future.delayedを使う方法です。

まず、Future.delayed関数をawaitで呼び出します。

そして、Future.delayed関数の引数に時間を指定します。

await Future.delayed(Duration(・・・));

Future.delayedは、指定した時間だけ処理を遅延させます。

Future.delayedは、第2引数にコールバック関数を指定することが出来ます。

第2引数にコールバック関数を指定した場合は、遅延した後に、コールバック関数を呼び出します。

Future.delayed(Duration(・・・), () {
    //指定した時間だけ遅延した後に処理される
});

使用例

import 'dart:async';

void main() async {
  print(DateTime.now()); //2022-04-05 09:29:05.166
  await Future.delayed(Duration(seconds: 5));
  print(DateTime.now()); //2022-04-05 09:29:10.168
}
スポンサーリンク

まとめ

遅延実行をする方法は、次の2つです。

  • sleep関数を使う方法
  • Future.delayedを使う方法

コメント

タイトルとURLをコピーしました