チェンジセット 575

差分発生行の前後
無視リスト:
コミット日時:
2008/06/06 01:56:09 (6 ヶ月前)
コミッタ:
yossy
ログメッセージ:

Thread(soumen): CommandThread? の割り込み処理忘れてたので追加

ファイル:

凡例:

変更無し
追加
削除
更新
コピー
移動
  • as3/Thread/branches/soumen/src/org/libspark/thread/threads/progression/CommandThread.as

    r574 r575  
    4646                private var _command:Command; 
    4747                 
     48                private function events():void 
     49                { 
     50                        event(_command, CommandEvent.COMMAND_COMPLETE, completeHandler); 
     51                        event(_command, CommandEvent.COMMAND_INTERRUPT, completeHandler); 
     52                        event(_command, CommandEvent.COMMAND_ERROR, errorHandler); 
     53                } 
     54                 
    4855                override protected function run():void 
    4956                { 
    5057                        // イベントハンドラ設定 
    51                         event(_command, CommandEvent.COMMAND_COMPLETE, completeHandler); 
    52                         event(_command, CommandEvent.COMMAND_INTERRUPT, completeHandler); 
    53                         event(_command, CommandEvent.COMMAND_ERROR, errorHandler); 
     58                        events(); 
     59                        // 割り込みハンドラ設定 
     60                        interrupted(interruptedHandler); 
    5461                        // 実行 
    5562                        // 別スレッドにして実行しているのは、 Command を execute した瞬間イベントが飛んでくることがあるので、 
    5663                        // 確実にイベントハンドラが設定された状態で execute を呼び出すため (イベントハンドラはこの関数を抜けた後に設定される) 
    5764                        new CommandFireThread(_command).start(); 
     65                } 
     66                 
     67                private function interruptedHandler():void 
     68                { 
     69                        // イベントハンドラ設定 
     70                        events(); 
     71                        // 中断をかける 
     72                        _command.interrupt(); 
    5873                } 
    5974