別のキーワード
ライブラリ
- ビルトイン (384)
- base64 (12)
- bigdecimal (24)
-
bigdecimal
/ math (72) - erb (60)
- json (24)
- objspace (24)
- open-uri (16)
- open3 (72)
- shellwords (24)
- syslog (48)
- timeout (21)
モジュール
- Base64 (12)
- BigMath (96)
-
ERB
:: DefMethod (12) -
ERB
:: Util (48) - FileTest (24)
- JSON (24)
- Kernel (268)
- ObjectSpace (108)
- Open3 (72)
- Shellwords (24)
- Signal (24)
- Syslog (48)
- Timeout (21)
キーワード
- E (12)
- PI (12)
- ` (12)
- abort (24)
-
allocation
_ sourcefile (12) -
allocation
_ sourceline (12) - atan (12)
- blockdev? (12)
- chardev? (12)
- cos (12)
- decode64 (12)
-
def
_ erb _ method (12) -
define
_ finalizer (24) -
each
_ object (48) - exec (48)
- exit (12)
- exit! (12)
- exp (12)
- h (12)
-
html
_ escape (12) - log (12)
- open (40)
- open! (12)
- p (12)
-
pipeline
_ rw (24) -
pipeline
_ w (24) - popen3 (24)
-
pretty
_ generate (12) -
pretty
_ unparse (12) - print (12)
- reopen (12)
- shellescape (12)
- shelljoin (12)
- sin (12)
- sleep (24)
- sqrt (12)
- test (24)
- throw (12)
- timeout (21)
-
trace
_ var (36) - trap (24)
- u (12)
-
undefine
_ finalizer (12) -
url
_ encode (12) - warn (12)
検索結果
先頭5件
-
Kernel
. # puts(*arg) -> nil (18150.0) -
引数と改行を順番に 標準出力 $stdout に出力します。 引数がなければ改行のみを出力します。
...ドにより文字列へ変換を試みます。
末尾が改行で終っている引数や配列の要素に対しては puts 自身
は改行を出力しません。
@param arg 出力するオブジェクトを任意個指定します。
@raise IOError 標準出力が書き込み用にオープ......に失敗した場合に発生します。
//emlist[例][ruby]{
puts "foo", "bar\n", "baz"
puts "" # 改行のみ出力
puts # 改行のみ出力
puts nil # 改行のみ出力
puts ["oui", "non"]
#=> foo
# bar
# baz
#
#
#
# oui
# non
//}
@see Kernel.#print, Kernel.#p, IO#puts... -
Kernel
. # abort -> () (43.0) -
Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
...@param message エラーメッセージ文字列です。
//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 'en......@param message エラーメッセージ文字列です。
//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... -
Kernel
. # abort(message) -> () (43.0) -
Ruby プログラムをエラーメッセージ付きで終了します。終了ステータスは 1 固定です。
...@param message エラーメッセージ文字列です。
//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 'en......@param message エラーメッセージ文字列です。
//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... -
Kernel
. # exit(status = true) -> () (43.0) -
Rubyプログラムの実行を終了します。status として整 数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 0(正常終了)です。
...す。
@param status 終了ステータスを整数か true または false で与えます。
//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' #... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (43.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...きは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラーメッセージを指定します.省略した場......min[0] += 1 : min[1] += 1
end
end
t = 5
min = [ 0, 0]
begin
Timeout.timeout(t){
calc_pi(min)
}
rescue Timeout::Error
puts "timeout"
end
printf "%d: pi = %f\n", min[0] + min[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443
例 独自の例外......quire 'timeout'
class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "MYError"
puts err
end
=== 注意
timeout による割り込みは Thread によって実現されています。
C 言語レベルで実装され... -
Timeout
. # timeout(sec , exception _ class , message) {|i| . . . } -> object (43.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...きは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラーメッセージを指定します.省略した場......min[0] += 1 : min[1] += 1
end
end
t = 5
min = [ 0, 0]
begin
Timeout.timeout(t){
calc_pi(min)
}
rescue Timeout::Error
puts "timeout"
end
printf "%d: pi = %f\n", min[0] + min[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443
例 独自の例外......quire 'timeout'
class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "MYError"
puts err
end
=== 注意
timeout による割り込みは Thread によって実現されています。
C 言語レベルで実装され... -
ObjectSpace
. # define _ finalizer(obj) {|id| . . . } -> Array (37.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
...題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザとして Proc オブジェクトを指定します。proc は obj の回......efine_finalizer の使い方の悪い例です。
//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
end
end
Foo.new
GC.start
//}
これは、渡された proc の self が obj を参照しつ
づけるため。そのオブジェ......ストで Proc を
生成することで上記の問題を回避しています。
//emlist[例][ruby]{
class Bar
def Bar.callback
proc {
puts "bar"
}
end
def initialize
ObjectSpace.define_finalizer(self, Bar.callback)
end
end
Bar.new
GC.start
//}
proc の呼び出しで... -
ObjectSpace
. # define _ finalizer(obj , proc) -> Array (37.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
...題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザとして Proc オブジェクトを指定します。proc は obj の回......efine_finalizer の使い方の悪い例です。
//emlist[悪い例][ruby]{
class Foo
def initialize
ObjectSpace.define_finalizer(self) {
puts "foo"
}
end
end
Foo.new
GC.start
//}
これは、渡された proc の self が obj を参照しつ
づけるため。そのオブジェ......ストで Proc を
生成することで上記の問題を回避しています。
//emlist[例][ruby]{
class Bar
def Bar.callback
proc {
puts "bar"
}
end
def initialize
ObjectSpace.define_finalizer(self, Bar.callback)
end
end
Bar.new
GC.start
//}
proc の呼び出しで... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (37.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...す。
また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
例 長い計算のタ......min[0] += 1 : min[1] += 1
end
end
t = 5
min = [ 0, 0]
begin
Timeout.timeout(t){
calc_pi(min)
}
rescue Timeout::Error
puts "timeout"
end
printf "%d: pi = %f\n", min[0] + min[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443
例 独自の例外......quire 'timeout'
class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep(30)
}
rescue MYError => err
puts "MYError"
puts err
end
=== 注意
timeout による割り込みは Thread によって実現されています。
C 言語レベルで実装され... -
Kernel
. # exec(command , options={}) -> () (35.0) -
引数で指定されたコマンドを実行します。
...されます。
そうでなければインタプリタから直接実行されます。
@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby イ......ンタプリタに制御が戻った場合に発生します。
//emlist[例][ruby]{
# a.rb
puts '実行前'
exec 'echo "実行中"'
puts '実行後'
//}
上記のスクリプトを実行すると以下のようになります。
$ ruby a.rb
実行前
実行中
# '実行後' は表示さ...