Dart FutureクラスasStream()メソッド

Dar言語StreamクラスtoSet()メソッドDart

Dart FutureクラスのasStream()メソッドについてメモ書き。

asStream()はFuture型をStream型に変換するメソッド。
StreamはFutureと同様にdart:asyncライブラリに含まれる非同期型のクラスで、リスナーを通してイベントを受信できる。

コーディングで確認。

Future<int> testFuture() async {
  int? i;
  await Future.delayed(Duration(seconds: 2), () {
    i = 3;
  });
  return Future.value(i);
}

void main() {
  // Future型をasStream()メソッドでStream型に変換し、リスナーで受け取った値を表示
  Stream strTest = testFuture().asStream();
  strTest.listen((event) {
    print(event);
  });
}

実行結果。

3

コメント

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