114件ヒット
[101-114件を表示]
(0.033秒)
別のキーワード
種類
- インスタンスメソッド (90)
- 特異メソッド (24)
ライブラリ
- ビルトイン (114)
キーワード
- alive? (12)
- backtrace (12)
-
handle
_ interrupt (12) -
report
_ on _ exception (9) -
report
_ on _ exception= (9) - run (12)
- status (12)
- stop? (12)
- wakeup (12)
検索結果
-
Thread
# backtrace -> [String] | nil (7.0) -
スレッドの現在のバックトレースを返します。
...ている場合は nil を返します。
//emlist[例][ruby]{
class C1
def m1
sleep 5
end
def m2
m1
end
end
th = Thread.new {C1.new.m2; Thread.stop}
th.backtrace
# => [
# [0] "(irb):3:in `sleep'",
# [1] "(irb):3:in `m1'",
# [2] "(irb):6:in `m2'",
# [3] "(irb):1... -
Thread
. handle _ interrupt(hash) { . . . } -> object (7.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
...ングを引数で指定した内容に変更してブロックを
実行します。
「割り込み」とは、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終......してください。
=== 使い方
例:Thread#raise 発生のタイミングを制御する例
th = Thread.new do
Thread.handle_interrupt(RuntimeError => :never) {
begin
# 安全にリソースの割り当てが可能
Thread.handle_interrupt(RuntimeError => :immediate......) {
# ...
}
ensure
# 安全にリソースの解放が可能
end
}
end
Thread.pass
# ...
th.raise "stop"
RuntimeError を無視(延期)している間はリソースの割り当てや ensure
節でリソースの解放を安全に行う事ができ...