ライブラリ
- ビルトイン (144)
-
irb
/ cmd / subirb (12) -
irb
/ extend-command (12) - open3 (24)
- shell (6)
-
shell
/ process-controller (6) -
shell
/ system-command (6) - timeout (21)
クラス
-
IRB
:: ExtendCommand :: Kill (12) - Shell (6)
-
Shell
:: ProcessController (6) -
Shell
:: SystemCommand (6) - Thread (72)
モジュール
-
IRB
:: ExtendCommandBundle (12) - Open3 (24)
- Process (24)
- Signal (36)
- Timeout (21)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - Thread (12)
- WUNTRACED (12)
- execute (12)
- exit (12)
-
handle
_ interrupt (12) -
install
_ extend _ commands (12) -
kill
_ job (6) -
pipeline
_ start (24) -
ruby 1
. 8 . 4 feature (12) - signame (12)
- status (12)
- terminate (12)
- timeout (21)
- trap (24)
- スレッド (12)
- セキュリティモデル (2)
検索結果
先頭5件
-
Thread
# exit -> self (13.0) -
スレッドの実行を終了させます。終了時に ensure 節が実行されます。
...it(0)
により終了します。
Kernel.#exit と違い例外 SystemExit を発生しません。
th1 = Thread.new do
begin
sleep 10
ensure
p "this will be displayed"
end
end
sleep 0.1
th1.kill
#=> "this will be displayed"
@see Kernel.#exit, Kernel.#exit!... -
Thread
# terminate -> self (13.0) -
スレッドの実行を終了させます。終了時に ensure 節が実行されます。
...it(0)
により終了します。
Kernel.#exit と違い例外 SystemExit を発生しません。
th1 = Thread.new do
begin
sleep 10
ensure
p "this will be displayed"
end
end
sleep 0.1
th1.kill
#=> "this will be displayed"
@see Kernel.#exit, Kernel.#exit!... -
IRB
:: ExtendCommandBundle . install _ extend _ commands -> object (12.0) -
定義済みの拡張を読み込みます。
...* irb_push_workspace
* irb_pop_workspace
* irb_load
* irb_require
* irb_source
* irb
* irb_jobs
* irb_fg
* irb_kill
* irb_help
irb/extend-command が require された時にライブラリ内部で自動的
に実行されます。
@see IRB::ExtendCommandBundle.install_extend_commands... -
Process
:: WUNTRACED -> Integer (12.0) -
Process.#waitpid の第二引数に指定するフラグです。 このフラグが指定された場合、waitpid は停止しているだけで 終了していない子プロセスのプロセス ID も返すようになります。 trace されている子プロセスの 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 (12.0) -
引数で指定されたシグナル番号をシグナル名に変換して返します。
...引数で指定されたシグナル番号をシグナル名に変換して返します。
Signal.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT
@see Signal.#list... -
Signal
. # signame(signo) -> String | nil (12.0) -
引数で指定されたシグナル番号をシグナル名に変換して返します。 対応するシグナル番号が存在しない場合は nil を返します。
...引数で指定されたシグナル番号をシグナル名に変換して返します。
対応するシグナル番号が存在しない場合は nil を返します。
Signal.trap("INT") { |signo| puts Signal.signame(signo) }
Process.kill("INT", 0)
# => INT
@see Signal.#list... -
Thread
# status -> String | false | nil (12.0) -
生きているスレッドの状態を文字列 "run"、"sleep", "aborting" のいず れかで返します。正常終了したスレッドに対して false、例外によ り終了したスレッドに対して nil を返します。
...d = Thread.new { sleep }
d.kill #=> #<Thread:0x401b3678 aborting>
a.status #=> nil
b.status #=> "sleep"
c.status #=> false
d.status #=> "aborting"
Thread.current.status #=> "run"
@see Thread#alive?, Thread#st... -
セキュリティモデル (12.0)
-
セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。
...ールのメソッド
* IO#ioctl, IO#fcntl
* Process.fork Process.#setpgid Process.#setsid
Process.#setpriority Process.#egid= Process.#kill
* 危険なパスからの Kernel.#load
* 汚染された文字列を引数にしての Kernel.#load (ラップされていても)
* Kernel......の扱い
* 拡張ライブラリではオブジェクトの汚染状態を適切に伝播させる必要があります。
* グローバルな状態を変更する場合や外部とのやりとりの前にセキュリティレベルを
チェックする必要があります。
@see 37407...