alworker:アイドルタスク
no way to compare when less than two revisions
差分
このページの2つのバージョン間の差分を表示します。
— | alworker:アイドルタスク [2014/07/09 11:11] (現在) – 作成 - 外部編集 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== AlWorker アイドルタスク ====== | ||
+ | |||
+ | require " | ||
+ | ---- | ||
+ | イベントドリブンではない、常時実行するタスクを定義できます。 | ||
+ | |||
+ | <code ruby> | ||
+ | def idle_task() | ||
+ | # any code | ||
+ | end | ||
+ | </ | ||
+ | |||
+ | idle_task メソッドを定義しておくと、イニシャライズ終了後にイベントとは関係なく動作を開始します。\\ | ||
+ | スレッドプライオリティーが1段階低く設定されますので、イベントハンドラの動作が優先されます。\\ | ||
+ | アイドルタスクが終了しても、プログラムが終了することはありません。これは、例外によってアイドルタスクが終了した場合も同様です。\\ | ||
+ | アイドルタスクが終了とともにプログラムも終了させたい場合は、AlWorker# | ||
+ | |||
+ | <code ruby> | ||
+ | worker = MyWorker.new() | ||
+ | worker.run( :nopid, : | ||
+ | </ | ||
alworker/アイドルタスク.txt · 最終更新: 2014/07/09 11:11 by hirohito