るりまサーチ

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

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. kernel p
  5. rsa p

ライブラリ

クラス

モジュール

キーワード

検索結果

<< < 1 2 3 >>

Readline.#readline(prompt = "", add_hist = false) -> String | nil (173.0)

prompt を出力し、ユーザからのキー入力を待ちます。 エンターキーの押下などでユーザが文字列を入力し終えると、 入力した文字列を返します。 このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。 何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、 ユーザからの入力がない場合は nil を返します。

...
p
rompt を出力し、ユーザからのキー入力を待ちます。
エンターキーの押下などでユーザが文字列を入力し終えると、
入力した文字列を返します。
このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します...
...と Emacs モードが用意されています。
デフォルトは Emacs モードです。

@param prompt カーソルの前に表示する文字列を指定します。デフォルトは""です。
@param add_hist 真ならば、入力した文字列をヒストリに記録します。デフォ...
...例:

require "readline"

input = Readline.readline
(プロンプトなどは表示せずに、入力待ちの状態になります。
ここでは「abc」を入力後、エンターキーを押したと想定します。)
abc

p
input # => "abc"

input = Readline.readline("> ")
(...

Timeout.#timeout(sec, exception_class = nil) {|i| ... } -> object (137.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...ます。

exception_class を指定した場合には Timeout::Error の代わりに
その例外が発生します。
ブロックパラメータ i は sec がはいります。

また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。

@param sec タ...
...イムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.

例 長い計算のタイムアウト
require 'timeout'

def calc_pi(min)
loop do
x = rand
y = rand
x**2 + y**2 < 1.0 ? mi...
...alc_pi(min)
}
rescue Timeout::Error
p
uts "timeout"
end

p
rintf "%d: pi = %f\n", min[0] + min[1], min[0]*4.0/(min[0]+min[1])
#例
#=> 417519: pi = 3.141443

例 独自の例外を発生させるタイムアウト
#!/usr/bin/env ruby

require 'timeout'

class MYError < Exceptio...
...@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラーメッセージを指定します.省略した場合は
"execution expired" になります.

例 長い計算のタイムアウト
require 'timeout'

def calc_pi...
...(min)
loop do
x = rand
y = rand
x**2 + y**2 < 1.0 ? min[0] += 1 : min[1] += 1
end
end

t = 5
min = [ 0, 0]
begin
Timeout.timeout(t){
calc_pi(min)
}
rescue Timeout::Error
p
uts "timeout"
end

p
rintf "%d: pi = %f\n", min[0] + min[1], min[0]*4....

Timeout.#timeout(sec, exception_class, message) {|i| ... } -> object (137.0)

ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。

...ます。

exception_class を指定した場合には Timeout::Error の代わりに
その例外が発生します。
ブロックパラメータ i は sec がはいります。

また sec が 0 もしくは nil のときは制限時間なしで
ブロックを実行します。

@param sec タ...
...@param exception_class タイムアウトした時、発生させる例外を指定します.
@param message エラーメッセージを指定します.省略した場合は
"execution expired" になります.

例 長い計算のタイムアウト
require 'timeout'

def calc_pi...
...(min)
loop do
x = rand
y = rand
x**2 + y**2 < 1.0 ? min[0] += 1 : min[1] += 1
end
end

t = 5
min = [ 0, 0]
begin
Timeout.timeout(t){
calc_pi(min)
}
rescue Timeout::Error
p
uts "timeout"
end

p
rintf "%d: pi = %f\n", min[0] + min[1], min[0]*4....

Benchmark.#benchmark(caption = "", label_width = nil, fmtstr = nil, *labels) {|rep| ...} -> [Benchmark::Tms] (119.0)

Benchmark::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。

...Benchmark::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。

基本的には以下のように使います。
ブロックが Benchmark::Tms オブジェクトの配列を返した場合は、
それらの数値も追加の行に表示...
...されます。

@param caption レポートの一行目に表示する文字列を指定します。
@param label_width ラベルの幅を指定します。
@param fmtstr フォーマット文字列を指定します。
この引数を省略すると Benchmark::FORMAT...
...@param labels ブロックが Benchmark::Tms オブジェクトの配列を返す場合に指定します。

=== フォーマット文字列

フォーマット文字列として以下が使用できます。

: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system
CP...

Benchmark.#bm(label_width = 0, *labels) {|rep| ... } -> [Benchmark::Tms] (119.0)

Benchmark.#benchmark メソッドの引数を簡略化したものです。

...

@param label_width ラベルの幅を指定します。
@param labels ブロックが Benchmark::Tms オブジェクトの配列を返す場合に指定します。

//emlist[][ruby]{
require 'benchmark'

n = 50000
Benchmark.bm do |x|
x.report { for i in 1..n; a = "1"; end }
x.report {...
...n.times do ; a = "1"; end }
x.report { 1.upto(n) do ; a = "1"; end }
end

#=>
#
# user system total real
# 1.033333 0.016667 1.016667 ( 0.492106)
# 1.483333 0.000000 1.483333 ( 0.694605)
# 1.516667 0.000000 1.516667 ( 0.711077)
//}

以下のようにも書け...
...e 'benchmark'

n = 50000
Benchmark.bm(7) do |x|
x.report("for:") { for i in 1..n; a = "1"; end }
x.report("times:") { n.times do ; a = "1"; end }
x.report("upto:") { 1.upto(n) do ; a = "1"; end }
end

#=>
# user system total real
# for: 1.050000 0.000000...

絞り込み条件を変える

Kernel.#exec(env, program, *args, options={}) -> () (107.0)

引数で指定されたコマンドを実行します。

...継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。

=== 引数の解釈

この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program の引数に渡さ...
...定しなくても環境変数 PATH から探します。

@param program 文字列か2要素の配列を指定します。
@param args 渡される引数です。0 個以上の文字列を指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメー...
...ec ['sleep', 'mysleep'], '600'
//}

上記スクリプトを実行すると以下のようになります。

$ ruby a.rb
## sleep してるので制御が戻ってこない。別の仮想端末に切替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S...

Kernel.#exec(program, *args, options={}) -> () (107.0)

引数で指定されたコマンドを実行します。

...継ぎます。
Hash を options として渡すことで、この挙動を変更できます。
詳しくは Kernel.#spawn を参照してください。

=== 引数の解釈

この形式で呼び出した場合、空白や shell のメタキャラクタも
そのまま program の引数に渡さ...
...定しなくても環境変数 PATH から探します。

@param program 文字列か2要素の配列を指定します。
@param args 渡される引数です。0 個以上の文字列を指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメー...
...ec ['sleep', 'mysleep'], '600'
//}

上記スクリプトを実行すると以下のようになります。

$ ruby a.rb
## sleep してるので制御が戻ってこない。別の仮想端末に切替えて以下を実行
$ ps aux|grep sleep
xxxx 32754 0.0 0.0 2580 468 pts/3 S...

Kernel.#exec(command, options={}) -> () (102.0)

引数で指定されたコマンドを実行します。

...されます。
そうでなければインタプリタから直接実行されます。

@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby イ...
...ンタプリタに制御が戻った場合に発生します。

//emlist[例][ruby]{
# a.rb
p
uts '実行前'
exec 'echo "実行中"'
p
uts '実行後'
//}

上記のスクリプトを実行すると以下のようになります。

$ ruby a.rb
実行前
実行中
# '実行後' は表示さ...

Kernel.#exec(env, command, options={}) -> () (102.0)

引数で指定されたコマンドを実行します。

...されます。
そうでなければインタプリタから直接実行されます。

@param command コマンドを文字列で指定します。
@param env 更新する環境変数を表す Hash
@param options オプションパラメータ Hash
@raise Errno::EXXX 起動に失敗し、ruby イ...
...ンタプリタに制御が戻った場合に発生します。

//emlist[例][ruby]{
# a.rb
p
uts '実行前'
exec 'echo "実行中"'
p
uts '実行後'
//}

上記のスクリプトを実行すると以下のようになります。

$ ruby a.rb
実行前
実行中
# '実行後' は表示さ...
<< < 1 2 3 >>