11件ヒット
[1-11件を表示]
(0.397秒)
クラス
- Thread (11)
検索結果
-
Thread
. pending _ interrupt?(error = nil) -> bool (26126.0) -
非同期割り込みのキューが空かどうかを返します。
...}
end
=== 使い方
th = Thread.new{
Thread.handle_interrupt(RuntimeError => :on_blocking){
while true
...
# ここまでで割り込みが発生しても安全な状態になった。
if Thread.pending_interrupt?
Thread.handle_interrupt(Object......=> :immediate){}
end
...
end
}
}
...
th.raise # スレッド停止。
この例は以下のように記述する事もできます。
flag = true
th = Thread.new{
Thread.handle_interrupt(RuntimeError => :on_blocking){
while true
...
#......ここまでで割り込みが発生しても安全な状態になった。
break if flag == false
...
end
}
}
...
flag = false # スレッド停止
@see Thread#pending_interrupt?, Thread.handle_interrupt...