るりまサーチ

最速Rubyリファレンスマニュアル検索!
198件ヒット [1-100件を表示] (0.158秒)

別のキーワード

  1. _builtin new
  2. _builtin inspect
  3. _builtin []
  4. _builtin to_s
  5. _builtin each

クラス

モジュール

キーワード

検索結果

<< 1 2 > >>

Thread.kill(thread) -> Thread (29309.0)

指定したスレッド thread に対して Thread#exit を呼びます。終了したスレッドを返します。

...指定したスレッド thread に対して Thread#exit を呼びます。終了したスレッドを返します。

@param thread 終了したい Thread オブジェクトを指定します。

th = Thread.new do
e
nd

p Thread.kill(th) #=> #<Thread:0x40221bc8 dead>...

Process.#kill(signal, pid, *rest) -> Integer (29209.0)

pid で指定されたプロセスにシグナルを送ります。signal はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。 全てのシグナル送信に成功した場合、指定した pid の総数を返します。

...けたものと見なされます。

@param rest プロセス ID を整数で指定します。

@raise ArgumentError 存在しないシグナルを指定した場合に発生します。

@raise Errno::EXXX シグナル送信に失敗した場合に発生します。


@see Kernel.#trap, kill(2)...

Thread#kill -> self (26209.0)

スレッドの実行を終了させます。終了時に ensure 節が実行されます。

...時に ensure 節が実行されます。

ただし、スレッドは終了処理中(aborting)にはなりますが、
直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
終了したスレッドの Thread#value の返り...
...Kernel.#exit(0)
により終了します。

Kernel.#exit と違い例外 SystemExit を発生しません。

th1 = Thread.new do
begin
sleep 10
e
nsure
p "this will be displayed"
e
nd
e
nd

sleep 0.1
th1.kill

#=> "this will be displayed"

@see Kernel.#exit, Kernel...
....#exit!...

Errno::ERFKILL (23002.0)

システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。

...システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。...

Thread#exit -> self (14109.0)

スレッドの実行を終了させます。終了時に ensure 節が実行されます。

...時に ensure 節が実行されます。

ただし、スレッドは終了処理中(aborting)にはなりますが、
直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
終了したスレッドの Thread#value の返り...
...Kernel.#exit(0)
により終了します。

Kernel.#exit と違い例外 SystemExit を発生しません。

th1 = Thread.new do
begin
sleep 10
e
nsure
p "this will be displayed"
e
nd
e
nd

sleep 0.1
th1.kill

#=> "this will be displayed"

@see Kernel.#exit, Kernel...
....#exit!...

絞り込み条件を変える

Thread#terminate -> self (14109.0)

スレッドの実行を終了させます。終了時に ensure 節が実行されます。

...時に ensure 節が実行されます。

ただし、スレッドは終了処理中(aborting)にはなりますが、
直ちに終了するとは限りません。すでに終了している場合は何もしません。このメソッドにより
終了したスレッドの Thread#value の返り...
...Kernel.#exit(0)
により終了します。

Kernel.#exit と違い例外 SystemExit を発生しません。

th1 = Thread.new do
begin
sleep 10
e
nsure
p "this will be displayed"
e
nd
e
nd

sleep 0.1
th1.kill

#=> "this will be displayed"

@see Kernel.#exit, Kernel...
....#exit!...

Process::WUNTRACED -> Integer (14108.0)

Process.#waitpid の第二引数に指定するフラグです。 このフラグが指定された場合、waitpid は停止しているだけで 終了していない子プロセスのプロセス ID も返すようになります。 trace されている子プロセスの ID は返しません。

...Process.#waitpid の第二引数に指定するフラグです。
このフラグが指定された場合、waitpid は停止しているだけで
終了していない子プロセスのプロセス ID も返すようになります。
trace されている子プロセスの ID は返しません...
...

include Process
pid = fork{ Process.kill('SIGSTOP', Process.pid) }
p pid #=> 4336
p waitpid2(pid, WUNTRACED) #=> [4336, #<Process::Status: pid=4336,stopped(SIGSTOP=19)>]

@see waitpid(2)...

Signal.#signame(signo) -> String (14108.0)

引数で指定されたシグナル番号をシグナル名に変換して返します。

...引数で指定されたシグナル番号をシグナル名に変換して返します。

Signal.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT

@see Signal.#list...

Signal.#signame(signo) -> String | nil (14108.0)

引数で指定されたシグナル番号をシグナル名に変換して返します。 対応するシグナル番号が存在しない場合は nil を返します。

...引数で指定されたシグナル番号をシグナル名に変換して返します。
対応するシグナル番号が存在しない場合は nil を返します。

Signal.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT

@see Signal.#list...

Thread#backtrace -> [String] | nil (14108.0)

スレッドの現在のバックトレースを返します。

.../emlist[例][ruby]{
class C1
def m1
sleep 5
e
nd
def m2
m1
e
nd
e
nd

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):10:in `block in irb_binding'"
# ]

th.kill...
...th.backtrace # => nil
//}...

絞り込み条件を変える

Thread#value -> object (14108.0)

スレッド self が終了するまで待ち(Thread#join と同じ)、 そのスレッドのブロックが返した値を返します。スレッド実行中に例外が 発生した場合には、その例外を再発生させます。

...スレッド self が終了するまで待ち(Thread#join と同じ)、
そのスレッドのブロックが返した値を返します。スレッド実行中に例外が
発生した場合には、その例外を再発生させます。

スレッドが Thread#kill によって終了した場合...
...ち結果を出力する例です。

threads = []
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })
threads.push(Thread.new { n = rand(5); sleep n; n })

threads.each {|t| p t.value}

最後の行で、待ち合わせを行っ...
...ていることがわかりにくいと思うなら以下
のように書くこともできます。

threads.each {|t| p t.join.value}...
<< 1 2 > >>