るりまサーチ

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

別のキーワード

  1. kernel system
  2. kernel exec
  3. kernel spawn
  4. kernel open
  5. kernel raise

ライブラリ

クラス

  • IO (154)

モジュール

キーワード

検索結果

<< 1 2 3 > >>

Kernel.#exit(status = true) -> () (27191.0)

Rubyプログラムの実行を終了します。status として整 数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 0(正常終了)です。

...false の場合 1 を引数に指定したとみなされます。この値はCレベルの定数
EXIT
_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。

exit
は例外 SystemExit を発生させ
ることによってプログラムの実行を終了させますので、
...
...//emlist[例][ruby]{
puts
'start'
begin
puts
'start1...'
exit

rescue SystemExit => err
puts
"end1 with #{err.inspect}"
end

begin
puts
'start2...'
exit

ensure
puts
'end2...'
end
puts
'end' #実行されない

#=> start
# start1...
# end1 with #<SystemExit: exit>
# start2...
# e...
...nd2...
#終了ステータス:0
//}

@see Kernel.#exit!,Kernel.#abort, d:spec/control#begin...

Kernel.#at_exit { ... } -> Proc (15197.0)

与えられたブロックをインタプリタ終了時に実行します。

...与えられたブロックをインタプリタ終了時に実行します。

at_exitがメソッドである点を除けば、END ブロックによる終了
処理の登録と同等です。登録した処理を取り消すことはできません。
spec/terminateも参照してください。...
...Proc オブジェクトで返します。

//emlist[例][ruby]{
3.times do |i|
at_exit{puts "at_exit#{i}"}
end
END{puts "END"}
at_exit{puts "at_exit"}
puts
"main_end"

#=> main_end
# at_exit
# END
# at_exit2
# at_exit1
# at_exit0
//}

@see d:spec/control#END,Kernel.#exit!,Kernel.#fork...

Kernel.#exit!(status = false) -> () (15197.0)

Rubyプログラムの実行を即座に終了します。 status として整数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 1 です。

...定したとみなされます。この値はCレベルの定数
EXIT
_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。

exit
! は exit とは違って、例外処理などは一切行ないませ
ん。 Kernel.#fork の後、子プロセスを終了させる時などに用...
...T.sync = true #表示前に終了しないようにする
puts
'start'
begin
puts
'start1...'
exit
!
ensure
puts
'end1...' #実行されない
end
puts
'end' #実行されない

#=> start
# start1...
#終了ステータス:1
//}

@see Kernel.#exit,Kernel.#abort,Kernel.#at_exit,Kernel.#fork...

Kernel.#abort -> () (9078.0)

Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。

... Kernel.#exit との違いは、プログラムの終了ステー
タスが 1 (正確にはCレベルの定数 EXIT_FAILURE の値)固定であることと、
エラーメッセージを標準エラー出力 $stderr に出力することです。

引数 message を指定すると SystemExit...
...ジ文字列です。

//emlist[][ruby]{
puts
'start'
begin
puts
'start1...'
abort "error1"
rescue SystemExit => err
puts
"end1 with #{err.inspect}"
end

begin
puts
'start2...'
raise RuntimeError.new
rescue
abort
ensure
puts
'end2...'
end
puts
'end' #実行されない

#(標準出力)...
...#=> start
# start1...
# end1 with #<SystemExit: error1>
# start2...
# end2...
#終了ステータス:1
#(標準エラー出力)
#=> error1
//}

@see Kernel.#exit,Kernel.#exit!...
...#=> start
# start1...
# end1 with #<SystemExit: error1>
# start2...
# end2...
#終了ステータス:1
#(標準エラー出力)
#=> error1
# Traceback (most recent call last):
# sample.rb:11:in `<main>': RuntimeError (RuntimeError)
//}

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

Kernel.#abort(message) -> () (9078.0)

Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。

... Kernel.#exit との違いは、プログラムの終了ステー
タスが 1 (正確にはCレベルの定数 EXIT_FAILURE の値)固定であることと、
エラーメッセージを標準エラー出力 $stderr に出力することです。

引数 message を指定すると SystemExit...
...ジ文字列です。

//emlist[][ruby]{
puts
'start'
begin
puts
'start1...'
abort "error1"
rescue SystemExit => err
puts
"end1 with #{err.inspect}"
end

begin
puts
'start2...'
raise RuntimeError.new
rescue
abort
ensure
puts
'end2...'
end
puts
'end' #実行されない

#(標準出力)...
...#=> start
# start1...
# end1 with #<SystemExit: error1>
# start2...
# end2...
#終了ステータス:1
#(標準エラー出力)
#=> error1
//}

@see Kernel.#exit,Kernel.#exit!...
...#=> start
# start1...
# end1 with #<SystemExit: error1>
# start2...
# end2...
#終了ステータス:1
#(標準エラー出力)
#=> error1
# Traceback (most recent call last):
# sample.rb:11:in `<main>': RuntimeError (RuntimeError)
//}

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

絞り込み条件を変える

Kernel.#fork -> Integer | nil (9048.0)

fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。

...y]{
if child_pid = fork
puts
"parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 81060, child pid: 81329

# 親プロセスでの処理
# ...

# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
else
puts
"child process. pid:...
...1)
end

puts
"parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602

# 親プロセスでの処理
# ...

# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}


@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fo...

Kernel.#fork { ... } -> Integer | nil (9048.0)

fork(2) システムコールを使ってプロセスの複製を作 ります。親プロセスでは子プロセスのプロセスIDを、子プロセスでは nil を返します。ブロックを指定して呼び出した場合には、生成し た子プロセスでブロックを評価します。

...y]{
if child_pid = fork
puts
"parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 81060, child pid: 81329

# 親プロセスでの処理
# ...

# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
else
puts
"child process. pid:...
...1)
end

puts
"parent process. pid: #{Process.pid}, child pid: #{child_pid}"
# => parent process. pid: 79055, child pid: 79602

# 親プロセスでの処理
# ...

# 子プロセスの終了を待って終了。
Process.waitpid(child_pid)
//}


@see IO.popen,IO.pipe,Kernel.#at_exit,Kernel.#exit!, fo...

Kernel.#throw(tag, value = nil) -> () (9046.0)

Kernel.#catchとの組み合わせで大域脱出を行います。 throw は同じ tag を指定した catch のブロックの終わりまでジャンプします。

...
Kernel
.#catchとの組み合わせで大域脱出を行います。 throw
は同じ tag を指定した catch のブロックの終わりまでジャンプします。

throw は探索時に呼び出しスタックをさかのぼるので、
ジャンプ先は同じメソッド内にあるとは限...
...いる catch が存在しない場合に発生します。

//emlist[例][ruby]{
def foo
throw :exit, 25
end

ret = catch(:exit) do
begin
foo
some_process() # 絶対に実行されない
10
ensure
puts
"ensure"
end
end
puts
ret
#=> ensure
# 25
//}

@see Kernel.#catch...

ruby 1.6 feature (108.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...2 回シグナルを送らないと終了しない不具合が修正さ
れました。((<ruby-bugs-ja:PR#223>))

trap(:TERM, "EXIT")

END{
puts
"exit"
}

Thread.start { Thread.stop }
sleep

: 2002-04-17: Regexp#inspect

((<ruby-bugs-ja:PR#222>))

p %r{\/}

=>...
...ambiguous first argument; make sure
ruby 1.6.7 (2002-03-15) [i586-linux]
0

: 2002-03-11 trap

((<ruby-bugs-ja:PR#206>))

trap('EXIT','Foo')
=> -:1: [BUG] Segmentation fault
ruby 1.6.7 (2002-03-01) [i586-linux]
=> ruby 1.6.7 (2002-03-15) [i586-linux]

: 2002-03-10...
...end
def []() @obj end
end
module Kernel
def _ptr() Ptr.new(self) end
end

def foo(int)
int[] += 1
end
x = 1._ptr
foo(x)
puts
x[]

=> -:11: [BUG] Segmentation fault
ruby...

制御構造 (84.0)

制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END

...ない最初の
式を評価します。

//emlist[][ruby]{
foo = false
bar = true
quu = false

case
when foo then puts 'foo is true'
when bar then puts 'bar is true'
when quu then puts 'quu is true'
end
# "bar is true"と表示される
//}

case は、条件が成立した when 節、(あるいは...
...一引数で指定された例外を、第二引数をメッセージとして発生さ
せます。第四の形式の第三引数は
$@または
Kernel
.#callerで得られる
スタック情報で、例外が発生した場所を示します。

発生した例外は後述の begin 式の rescue...
...rror_type が省略された時は StandardError のサブクラスであ
る全ての例外を捕捉します。Rubyの組み込み例外は(SystemExit
Interrupt のような脱出を目的としたものを除いて)
StandardError のサブクラスです。

例外クラスのクラス階層...

絞り込み条件を変える

<< 1 2 3 > >>