2017-01-20 5 views
-2

私はツイッチボット用のルビースクリプトを持っています。主な方法は、それを起動するrun()、ボットを終了するquit()です。投稿をオンラインで投稿すると、私はスレッドを作ることができるようです:Rubyはスレッド内のメソッドを実行します

TWITCH_BOT = Thread.new{ BOT = TwitchBot.new } 

私はそれを生き続けるために参加する必要がありますか?

TWITCH_BOT.join() 

にはどうすれば)(実行を実行しようとしてというよりも、スレッド、スレッド内TwitchBotから、実行()コマンドを実行して行くのですか?

+0

私たちはあなたが使っているツイートボットやそのために存在する機能を知りません。おそらくあなたが実行している特定のツイッチボットのリポジトリへのリンクを提供することができますか? – OneNeptune

答えて

0

安全な非同期コードについて書かれた全論文があるかもしれませんが、シンプルなボットの場合は、このようなコードを書いてみませんか?

class TwitchBot 
... 
    def run(&code_block) 
    @thread = Thread.start &code_block 
    end 
    ... 
    def quit 
    @thread.exit unless @thread.nil? 
    end 
    ... 
end 

編集:または、誰かが書いたツイッチボットを使用していますか?その場合は、上記のようなことをするラッパーを書くかもしれません。

+0

これは完璧でなければなりません。メッセージを読み込んで配列に格納する単純なボットです。 – Eric

関連する問題