ユーザ用ツール

サイト用ツール


alworker:アイドルタスク

AlWorker アイドルタスク

require "al_worker"


イベントドリブンではない、常時実行するタスクを定義できます。

  def idle_task()
    # any code
  end

idle_task メソッドを定義しておくと、イニシャライズ終了後にイベントとは関係なく動作を開始します。
スレッドプライオリティーが1段階低く設定されますので、イベントハンドラの動作が優先されます。
アイドルタスクが終了しても、プログラムが終了することはありません。これは、例外によってアイドルタスクが終了した場合も同様です。
アイドルタスクが終了とともにプログラムも終了させたい場合は、AlWorker#run() メソッドの引数に、:exit_idle_taskフラグを指定します。

worker = MyWorker.new()
worker.run( :nopid, :exit_idle_task )
alworker/アイドルタスク.txt · 最終更新: 2014/07/09 11:11 by hirohito