2016-08-26 14 views
0

RubyのThread.poolを使用して、自分のプログラム用に10個のスレッドを管理しています。私は2つの問題を抱えています:Rubyスレッドプールabort_on_exception

  1. 私はプールのabort_on_exceptionを有効にしたいと思います。私の関連するコードは次のとおりです。

    pool = Thread.pool(thread_count) 
    pool.abort_on_exception = true 
    

    私はそれを実行したとき、私は

    undefined method abort_on_exception= for #<Thread::Pool:0x007fb25bb144b8> (NoMethodError) 
    

    を取得していますが。私はトリプルチェックしてabort_on_exceptionThread.poolの属性であると考えられています。スレッドバージョン0.2.2を使用しています。

+0

私はあなたの最初の質問に答えました。 StackOverflowの質問ごとに1つだけ質問してください。したがって、質問を編集し、2番目の部分を削除して新しい1つの質問に入れてください。 –

答えて

1

abort_on_exception方法はThread::Poolクラス自体ではなく、個々のインスタンスで定義されています。そのように、あなたは

Thread::Pool.abort_on_exception = true 

この方法は、このようにRuby言語のコアでThread.abort_on_exceptionと非常によく似ています呼び出す必要があります。

関連する問題