るりまサーチ

最速Rubyリファレンスマニュアル検索!
12件ヒット [1-12件を表示] (0.127秒)
トップページ > クエリ:t[x] > クエリ:exception[x] > クエリ:Thread[x] > クラス:Thread[x] > クエリ:handle_interrupt[x]

別のキーワード

  1. drb thread
  2. thread pending_interrupt?
  3. etc sc_thread_prio_inherit
  4. etc sc_thread_prio_protect
  5. tracer get_thread_no

ライブラリ

検索結果

Thread.handle_interrupt(hash) { ... } -> object (45358.0)

スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。

...引数で指定した内容に変更してブロックを
実行します。

「割り込み」とは、非同期イベントや Thread#raise や
Thread
#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了され...
...=== 使い方

例:Thread#raise 発生のタイミングを制御する例

t
h = Thread.new do
Thread
.handle_interrupt(RuntimeError => :never) {
begin
# 安全にリソースの割り当てが可能
Thread
.handle_interrupt(RuntimeError => :immediate) {
# ......
...end
Thread
.pass
# ...
t
h.raise "stop"

RuntimeError を無視(延期)している間はリソースの割り当てや ensure
節でリソースの解放を安全に行う事ができます。

==== TimeoutError 対策

例:TimeoutError 発生のタイミングを制御する例

require 'tim...