2013-04-06 13 views

答えて

10

ダートが遅延し、繰り返しタスクのためのいくつかのオプションがありますが、私はダートにクォーツのポートを認識していないよ(まだ... :)ここ

が基本です:

  • Timer - 単にいくつかの遅延後関数を実行
  • Future - より強固な、構成可能、
  • Stream「将来的には」値を返す関数 - イベントの堅牢、構成可能なストリーム。定期的にすることができます。

繰り返しタスクがある場合は、Timer over Streamを使用することをおすすめします。 Timerにはエラー処理が組み込まれていないため、キャッチされない例外がプログラム全体を停止させる可能性があります(Dartにはグローバルエラーハンドラがありません)。

import 'dart:async'; 

main() { 
    var stream = new Stream.periodic(const Duration(hours: 1), (count) { 
    // do something every hour 
    // return the result of that something 
    }); 

    stream.listen((result) { 
    // listen for the result of the hourly task 
    }); 
} 

あなたは、具体的分離株について尋ねる:あなたは定期的な結果を生成するためにStreamを使用する方法ここで

です。あなたはプログラムの開始時に分離を生成し、毎時間メッセージを送信することができます。または、プログラムの開始時に分離株をスポーンすることができ、分離株自体が独自のタイマーまたは周期的ストリームを実行することができます。

関連する問題