るりまサーチ (Ruby 3.3)

最速Rubyリファレンスマニュアル検索!
310件ヒット [1-100件を表示] (0.058秒)
トップページ > クエリ:-[x] > クエリ:Proc[x] > バージョン:3.3[x]

別のキーワード

  1. _builtin -
  2. open-uri open
  3. irb/input-method new
  4. irb/input-method gets
  5. matrix -

オブジェクト

キーワード

検索結果

<< 1 2 3 ... > >>

Proc (114649.0)

ブロックをコンテキスト(ローカル変数のスコープやスタックフ レーム)とともにオブジェクト化した手続きオブジェクトです。

ブロックをコンテキスト(ローカル変数のスコープやスタックフ
レーム)とともにオブジェクト化した手続きオブジェクトです。

Proc は ローカル変数のスコープを導入しないことを除いて
名前のない関数のように使えます。ダイナミックローカル変数は
Proc ローカルの変数として使えます。

Proc がローカル変数のスコープを保持していることは以下の例で
変数 var を参照できていることからわかります。

//emlist[例][ruby]{
var = 1
$foo = Proc.new { var }
var = 2

def foo
$foo.call
end

p foo ...

Proc#to_proc -> self (81640.0)

self を返します。

self を返します。

//emlist[例][ruby]{
pr = proc {}
p pr == pr.to_proc # => true
//}

Proc#ruby2_keywords -> proc (63832.0)

Marks the proc as passing keywords through a normal argument splat. This should only be called on procs that accept an argument splat (`*args`) but not explicit keywords or a keyword splat. It marks the proc such that if the proc is called with keyword arguments, the final hash argument is marked with a special flag such that if it is the final element of a normal argument splat to another method call, and that method call does not include explicit keywords or a keyword splat, the final element is interpreted as keywords. In other words, keywords will be passed through the proc to other methods.

Marks the proc as passing keywords through a normal argument splat. This
should only be called on procs that accept an argument splat (`*args`)
but not explicit keywords or a keyword splat. It marks the proc such
that if the proc is called with keyword arguments, the final hash
argument is marked ...

Proc#curry -> Proc (63781.0)

Procをカリー化します

Procをカリー化します

カリー化したProcはいくつかの引数をとります。十分な数の引数が与えられると、元のProcに引数を渡し
て実行し、結果を返します。引数の個数が足りないときは、部分適用したカリー化Procを返します。

@param arity 引数の個数を指定します
@return カリー化したProcオブジェクトを返します

//emlist[例][ruby]{
b = proc {|x, y, z| (x||0) + (y||0) + (z||0) }
p b.curry[1][2][3] #=> 6
p b.curry[1, 2][3, 4] ...

Proc#curry(arity) -> Proc (63781.0)

Procをカリー化します

Procをカリー化します

カリー化したProcはいくつかの引数をとります。十分な数の引数が与えられると、元のProcに引数を渡し
て実行し、結果を返します。引数の個数が足りないときは、部分適用したカリー化Procを返します。

@param arity 引数の個数を指定します
@return カリー化したProcオブジェクトを返します

//emlist[例][ruby]{
b = proc {|x, y, z| (x||0) + (y||0) + (z||0) }
p b.curry[1][2][3] #=> 6
p b.curry[1, 2][3, 4] ...

絞り込み条件を変える

Proc#<<(callable) -> Proc (63778.0)

self と引数を合成した Proc を返します。

self と引数を合成した Proc を返します。

戻り値の Proc は可変長の引数を受け取ります。
戻り値の Proc を呼び出すと、まず受け取った引数を callable に渡して呼び出し、
その戻り値を self に渡して呼び出した結果を返します。

Proc#>> とは呼び出しの順序が逆になります。

@param callable Proc、Method、もしくは任意の call メソッドを持ったオブジェクト。

//emlist[例][ruby]{
f = proc { |x| x * x }
g = proc { |x| x + x }

# (3 + 3) * (3 + ...

Proc#>>(callable) -> Proc (63778.0)

self と引数を合成した Proc を返します。

self と引数を合成した Proc を返します。

戻り値の Proc は可変長の引数を受け取ります。
戻り値の Proc を呼び出すと、まず受け取った引数を self に渡して呼び出し、
その戻り値を callable に渡して呼び出した結果を返します。

Proc#<< とは呼び出しの順序が逆になります。

@param callable Proc、Method、もしくは任意の call メソッドを持ったオブジェクト。

//emlist[例][ruby]{
f = proc { |x| x * x }
g = proc { |x| x + x }

# (3 * 3) + (3 * ...

Proc#lambda? -> bool (63769.0)

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。


引数の取扱の厳密さの意味は以下の例を参考にしてください。

//emlist[例][ruby]{
# lambda で生成した Proc オブジェクトでは true
lambda{}.lambda? # => true
# proc で生成した Proc オブジェクトでは false
proc{}.lambda? # => false
# Proc.new で生成した Proc オブジェクトでは false
Proc.new{}.lambda? # => false

# 以下、lambda?が偽である場合
#...

Proc.new { ... } -> Proc (63730.0)

ブロックをコンテキストとともにオブジェクト化して返します。

ブロックをコンテキストとともにオブジェクト化して返します。

@raise ArgumentError ブロックを省略した呼び出しを行ったときに発生します。

//emlist[][ruby]{
pr = Proc.new {|arg| p arg }
pr.call(1) # => 1
//}

//emlist[][ruby]{
Proc.new # => -e:1:in `new': tried to create Proc object without a block (ArgumentError)
//}

Proc.new は、Proc#initialize が定義されていれば
...

Proc#parameters(lambda: nil) -> [object] (63421.0)

Proc オブジェクトの引数の情報を返します。

Proc オブジェクトの引数の情報を返します。

Proc オブジェクトが引数を取らなければ空の配列を返します。引数を取る場合は、配列の配列を返し、
各配列の要素は引数の種類に対応した以下のような Symbol と、引数名を表す Symbol の 2 要素です。

: :req
必須の引数
: :opt
デフォルト値が指定されたオプショナルな引数
: :rest
* で指定された残りすべての引数
: :keyreq
必須のキーワード引数
: :key
デフォルト値が指定されたオプショナルなキーワード引数
: :keyrest
** で指定された残りのキーワード引数
: :block...

絞り込み条件を変える

Proc#===(*arg) -> () (63409.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#[](*arg) -> () (63409.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#call(*arg) -> () (63409.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#yield(*arg) -> () (63409.0)

手続きオブジェクトを実行してその結果を返します。

手続きオブジェクトを実行してその結果を返します。

引数の渡され方はオブジェクトの生成方法によって異なります。
詳しくは Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p sign(-4) #=> -1
p sign(0) #=> 0
p sign(7) #=> 1...

Proc#binding -> Binding (63403.0)

Proc オブジェクトが保持するコンテキストを Binding オブジェクトで返します。

Proc オブジェクトが保持するコンテキストを
Binding オブジェクトで返します。

//emlist[例][ruby]{
def fred(param)
proc {}
end

sample_proc = fred(99)
eval("param", sample_proc.binding) # => 99
//}

絞り込み条件を変える

Proc#arity -> Integer (63385.0)

Proc オブジェクトが受け付ける引数の数を返します。

Proc オブジェクトが受け付ける引数の数を返します。

ただし、可変長引数を受け付ける場合、負の整数

-(必要とされる引数の数 + 1)

を返します。

//emlist[例][ruby]{
lambda{ }.arity # => 0
lambda{|| }.arity # => 0
lambda{|x| }.arity # => 1
lambda{|*x| }.arity # => -1
lambda{|x, y| }.arity # => 2
lambda{|x, *y| }...

Proc#source_location -> [String, Integer] | nil (63373.0)

ソースコードのファイル名と行番号を配列で返します。

ソースコードのファイル名と行番号を配列で返します。

その手続オブジェクトが ruby で定義されていない(つまりネイティブ
である)場合は nil を返します。


//emlist[例][ruby]{
# /path/to/target.rb を実行
proc {}.source_location # => ["/path/to/target.rb", 1]
proc {}.source_location # => ["/path/to/target.rb", 2]
(eval "proc {}").source_location # => ...

Proc#inspect -> String (63337.0)

self の文字列表現を返します。

self の文字列表現を返します。

可能なら self を生成したソースファイル名、行番号を含みます。

//emlist[例][ruby]{
p Proc.new {
true
}.to_s

# => "#<Proc:0x0x401a880c@-:3>"
//}

Proc#to_s -> String (63337.0)

self の文字列表現を返します。

self の文字列表現を返します。

可能なら self を生成したソースファイル名、行番号を含みます。

//emlist[例][ruby]{
p Proc.new {
true
}.to_s

# => "#<Proc:0x0x401a880c@-:3>"
//}

Proc#hash -> Integer (63301.0)

self のハッシュ値を返します。

self のハッシュ値を返します。

絞り込み条件を変える

Process.#setproctitle(title) -> String (27601.0)

ps(1) が出力する現在実行中の Ruby スクリプトの名前を引数 title で指定した文字列に変更します。

ps(1) が出力する現在実行中の Ruby スクリプトの名前を引数 title
で指定した文字列に変更します。

OS によっては何も行われません。また、処理結果に関係なく例外は発生しませ
ん。サポートされる OS ではない場合であっても NotImplementedError
が発生する事はありません。本メソッドを実行しても $0 への影響はあ
りません。

Process.setproctitle('myapp: worker #%d' % worker_id)

本メソッドは 2.1 以降でグローバル変数を用いないで現在実行中の Ruby スク
リプトの名前を表す文字列を設定す...

Process::CLOCK_PROCESS_CPUTIME_ID -> Integer | Symbol (27601.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては :GETRUSAGE_BASED_CLOCK_PROCESS_CPUTIME_ID です。
システムによっては定義されていません。

Process::PRIO_PROCESS -> Integer (27601.0)

対象とするプライオリティがプロセスプライオリティであることを表す定数です。

対象とするプライオリティがプロセスプライオリティであることを表す定数です。

Process.#getpriority または Process.#setpriority で使われます。

Process::RLIMIT_NPROC -> Integer (27601.0)

リソースの種類がユーザのプロセスの最大数であることを示す定数です。

リソースの種類がユーザのプロセスの最大数であることを示す定数です。

Process.#getrlimit、Process.#setrlimit で使われます。
システムによっては定義されていません。

Symbol#to_proc -> Proc (19099.0)

self に対応する Proc オブジェクトを返します。

self に対応する Proc オブジェクトを返します。

生成される Proc オブジェクトを呼びだす(Proc#call)と、
Proc#callの第一引数をレシーバとして、 self という名前のメソッドを
残りの引数を渡して呼びだします。

生成される Proc オブジェクトは lambda です。
//emlist[][ruby]{
:object_id.to_proc.lambda? # => true
//}

//emlist[明示的に呼ぶ例][ruby]{
:to_i.to_proc["ff", 16] # => 255 ← "ff".to_i(16)と同じ
//}

//...

絞り込み条件を変える

WEBrick::HTTPServer#mount_proc(dir, proc) -> () (19078.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

Readline.completion_proc -> Proc (19021.0)

ユーザからの入力を補完する時の候補を取得する Proc オブジェクト proc を取得します。

ユーザからの入力を補完する時の候補を取得する Proc オブジェクト
proc を取得します。

@see Readline.completion_proc=

Readline::FILENAME_COMPLETION_PROC -> Proc (19021.0)

GNU Readline で定義されている関数を使用してファイル名の補完を行うための Proc オブジェクトです。 Readline.completion_proc= で使用します。

GNU Readline で定義されている関数を使用してファイル名の補完を行うための
Proc オブジェクトです。
Readline.completion_proc= で使用します。

@see Readline.completion_proc=

Readline::USERNAME_COMPLETION_PROC -> Proc (19021.0)

GNU Readline で定義されている関数を使用してユーザ名の補完を行うための Proc オブジェクトです。 Readline.completion_proc= で使用します。

GNU Readline で定義されている関数を使用してユーザ名の補完を行うための
Proc オブジェクトです。
Readline.completion_proc= で使用します。

@see Readline.completion_proc=

Hash#default_proc -> Proc | nil (19009.0)

ハッシュのデフォルト値を返す Proc オブジェクトを返します。 ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

ハッシュのデフォルト値を返す Proc オブジェクトを返します。
ハッシュがブロック形式のデフォルト値を持たない場合 nil を返します。

//emlist[例][ruby]{
h = Hash.new {|hash, key| "The #{key} not exist in #{hash.inspect}"}
p h.default #=> nil
p block = h.default_proc #=> #<Proc:0x0x401a9ff4>
p block.call({},:foo) #=> "The foo not exist in {}"

h...

絞り込み条件を変える

Method#to_proc -> Proc (18991.0)

self を call する Proc オブジェクトを生成して返します。

self を call する Proc オブジェクトを生成して返します。

//emlist[例][ruby]{
class Foo
def foo
"foo"
end
end

m = Foo.new.method(:foo) # => #<Method: Foo#foo>
pr = m.to_proc # => #<Proc:0x007f874d026008 (lambda)>
pr.call # => "foo"
//}

Object#to_proc -> Proc (18991.0)

オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。

オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。

説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。

//emlist[][ruby]{
def doing
yield
end

class Foo
def to_proc
Proc.new{p 'ok'}
end
end

it = Foo.new
doing(&it) #=> "ok"
//}

Hash#to_proc -> Proc (18955.0)

self のキーに対応する値を返す Proc オブジェクトを返します。

self のキーに対応する値を返す Proc オブジェクトを返します。

//emlist[][ruby]{
h = {1 => 10, 2 => 20, 3 => 30}
[1, 2, 3].map(&h) # => [10, 20, 30]
//}

Enumerator::Yielder#to_proc -> Proc (18925.0)

Enumerator.new で使うメソッドです。

Enumerator.new で使うメソッドです。

引数を Enumerator::Yielder#yield に渡す Proc を返します。
これは Enumerator::Yielder オブジェクトを他のメソッドにブロック引数と
して直接渡すために使えます。

//emlist[例][ruby]{
text = <<-END
Hello
こんにちは
END

enum = Enumerator.new do |y|
text.each_line(&y)
end

enum.each do |line|
p line
end
# => "Hello\n"
# "こんにちは...

WEBrick::HTTPServer#mount_proc(dir) {|req, res| ...} -> () (18778.0)

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

サーバ上のディレクトリ dir にリクエストを処理する Proc オブジェクト proc を対応させます。

@param dir ディレクトリをあらわす文字列を指定します。

@param proc リクエストを処理する Proc オブジェクトを指定します。
WEBrick::HTTPResponse オブジェクトと WEBrick::HTTPRequest
オブジェクトを引数として proc.call(request, response) の引数の順で呼び出されます。

@raise WEBrick::HTTPServerError pr...

絞り込み条件を変える

Etc.#nprocessors -> Integer (18601.0)

有効な CPU コア数を返します。

有効な CPU コア数を返します。

//emlist[][ruby]{
require 'etc'
p Etc.nprocessors #=> 4
//}

Gem::CommandManager#process_args(args) -> () (18601.0)

引数 args を処理して gem コマンドを実行するために必要な処理を行います。

引数 args を処理して gem コマンドを実行するために必要な処理を行います。

@param args コマンドラインから受け取った引数を指定します。

REXML::SAX2Listener#processing_instruction(target, data) -> () (18601.0)

XML 処理命令(PI)に対し呼び出されるコールバックメソッドです。

XML 処理命令(PI)に対し呼び出されるコールバックメソッドです。

@param target ターゲット名が文字列で渡されます
@param data 処理命令の内容が文字列で渡されます

Tracer.display_process_id -> bool (18601.0)

真ならば、プロセス ID を表示します。 デフォルトは、偽です。

真ならば、プロセス ID を表示します。
デフォルトは、偽です。

Tracer.display_process_id? -> bool (18601.0)

真ならば、プロセス ID を表示します。 デフォルトは、偽です。

真ならば、プロセス ID を表示します。
デフォルトは、偽です。

絞り込み条件を変える

ruby 1.6 feature (15841.0)

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

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

((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。

== 1.6.8 (2002-12-24) -> stable-snapshot

: 2003-01-22: errno

EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま...

Kernel.#proc { ... } -> Proc (10654.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。


また、lambda に & 引数を渡すのは推奨されません。& 引数ではなくてブロック記法で記述する必要があります。

& 引数を渡した lambda は Warning[:deprecated] = true のときに警告メッセージ
「warning: lambda without a literal block is deprecated; use the proc without lambda instead」
を出力します。

@raise Argum...

WEBrick::HTTPServlet::ProcHandler.new(proc) -> WEBrick::HTTPServlet::ProcHandler (9958.0)

自身を初期化します。

自身を初期化します。

@param proc Proc オブジェクトを与えます。クライアントからのリクエストがあった時、
proc.call(request, response) のように呼び出されます。
request, response はそれぞれ WEBrick::HTTPRequest オブジェクトと
WEBrick::HTTPResponse オブジェクトです。

手続きオブジェクトの挙動の詳細 (9679.0)

手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan

手続きオブジェクトの挙動の詳細
* def
* should_use_next
* block
* lambda_proc
* orphan

===[a:def] 手続きオブジェクトとは

手続きオブジェクトとはブロックをコンテキスト(ローカル変数のスコープやスタックフレーム)と
ともにオブジェクトにしたものです。Proc クラスのインスタンスとして実現されています。

ブロック内では、新たなスコープが導入されるとともに、外側のローカル変数を参照できます。
Proc オブジェクトがローカル変数のスコープを保持していることは以下の例で変数 var を
参照できていることからわかりま...

Process.#wait2(pid = -1, flags = 0) -> [Integer, Process::Status] | nil (9649.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。

$? に終了した子プロセスの Process::Status オブジェクトがセットされます。

@param pid 子プロセスのプロセス ID を整数で指定します。
0 以上なら指定されたプロセス ID の子プロセスを待ちます。
0 な...

絞り込み条件を変える

Process.#waitpid2(pid = -1, flags = 0) -> [Integer, Process::Status] | nil (9649.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。

$? に終了した子プロセスの Process::Status オブジェクトがセットされます。

@param pid 子プロセスのプロセス ID を整数で指定します。
0 以上なら指定されたプロセス ID の子プロセスを待ちます。
0 な...

Etc::SC_NPROCESSORS_CONF -> Integer (9601.0)

Etc.#sysconf の引数に指定します。

Etc.#sysconf の引数に指定します。

詳細は sysconf(3) を参照してください。

Etc::SC_NPROCESSORS_ONLN -> Integer (9601.0)

Etc.#sysconf の引数に指定します。

Etc.#sysconf の引数に指定します。

詳細は sysconf(3) を参照してください。

Etc::SC_THREAD_PROCESS_SHARED -> Integer (9601.0)

Etc.#sysconf の引数に指定します。

Etc.#sysconf の引数に指定します。

詳細は sysconf(3) を参照してください。

Kernel$$PROCESS_ID -> Integer (9601.0)

$$ の別名

$$ の別名

require "English"

p sprintf("something%s", $PID) #=> "something5543" など

絞り込み条件を変える

Process.#times -> Process::Tms (9601.0)

自身のプロセスとその子プロセスが消費したユーザ/システム CPU 時間の積算を Process::Tms オブジェクトで返します。 時間の単位は秒で、浮動小数点数で与えられます。

自身のプロセスとその子プロセスが消費したユーザ/システム CPU 時間の積算を
Process::Tms オブジェクトで返します。
時間の単位は秒で、浮動小数点数で与えられます。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see Process::Tms

Process.#waitall -> [[Integer, Process::Status]] (9601.0)

全ての子プロセスが終了するのを待ちます。 終了した子プロセスの pid と終了ステータス (Process::Status) の配列の配列を返します。 子プロセスがいない状態でこのメソッドを呼び出すと空の配列を返します。

全ての子プロセスが終了するのを待ちます。
終了した子プロセスの pid と終了ステータス
(Process::Status) の配列の配列を返します。
子プロセスがいない状態でこのメソッドを呼び出すと空の配列を返します。

$? には最後に終了した子プロセスの Process::Status オブジェクトが設定されます。

2.times {|n|
Process.fork() { exit n }
}
p Process.waitall
#=> :Status: pid=2766,exited(1)>], [2765, #<Process::St...

Process.last_status -> Process::Status | nil (9601.0)

カレントスレッドで最後に終了した子プロセスのステータスを返します。

カレントスレッドで最後に終了した子プロセスのステータスを返します。

変数 $? の値と同じです。

Process.wait Process.spawn("ruby", "-e", "exit 13")
Process.last_status # => #<Process::Status: pid 4825 exit 13>

カレントスレッドで子プロセスを実行したことがない場合は nil を返します。

Process.last_status # => nil

@see Process::Status
@see $?

Process.#wait(pid = -1, flags = 0) -> Integer | nil (9349.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。

$? に終了した子プロセスの Process::Status オブジェクトがセットされます。

@param pid 子プロセスのプロセス ID を整数で指定します。
0 以上なら指定されたプロセス ID の子プロセスを待ちます。
0 な...

Process.#waitpid(pid = -1, flags = 0) -> Integer | nil (9349.0)

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが 終了した時に pid を返します。 wait2, waitpid2 は子プロセスの pid と終了ステータスを表す Process::Status オブジェクトの配列を返します。 ノンブロッキングモードで子プロセスがまだ終了していない時には nil を返します。

pid で指定される特定の子プロセスの終了を待ち、そのプロセスが
終了した時に pid を返します。
wait2, waitpid2 は子プロセスの pid と終了ステータスを表す
Process::Status オブジェクトの配列を返します。
ノンブロッキングモードで子プロセスがまだ終了していない時には
nil を返します。

$? に終了した子プロセスの Process::Status オブジェクトがセットされます。

@param pid 子プロセスのプロセス ID を整数で指定します。
0 以上なら指定されたプロセス ID の子プロセスを待ちます。
0 な...

絞り込み条件を変える

Process.#clock_gettime(clock_id, unit=:float_second) -> Float | Integer (9337.0)

POSIX の clock_gettime() 関数の時間を返します。

POSIX の clock_gettime() 関数の時間を返します。

例:
p Process.clock_gettime(Process::CLOCK_MONOTONIC) #=> 896053.968060096

@param clock_id クロックの種類を以下の定数のいずれかで指定します。
サポートされている定数は OS やバージョンに依存します。

: Process::CLOCK_REALTIME
SUSv2 to 4, Linux 2.5.63, FreeBSD 3.0, NetBSD 2.0, OpenBSD 2.1, macOS...

Process.#getrlimit(resource) -> [Integer] (9319.0)

カレントプロセスでのリソースの制限値を、整数の配列として返します。 返り値は、現在の制限値 cur_limit と、制限値として設定可能な最大値 max_limit の 配列 [cur_limit, max_limit] です。

カレントプロセスでのリソースの制限値を、整数の配列として返します。
返り値は、現在の制限値 cur_limit と、制限値として設定可能な最大値 max_limit の
配列 [cur_limit, max_limit] です。

それぞれの limit が Process::RLIM_INFINITY と等しい場合、リソースに制限がないことを意味します。

@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。

@raise Errno::EXXX リソースの制限値の取得が失敗した場合に発生します。

@raise NotImplem...

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

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

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

@param signal シグナルをシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。負の値を持つシグナル(あるいはシグナル名の前に-)を指定すると、プロセスではなくプロセスグループにシグナルを送ります。

@param pid シグナルを送りたいプロセスのプロセス ID を整数で指定します。ただし、0 以下の場合は以下のような意味になります。

* 0 ...

Process.#setpriority(which, who, prio) -> 0 (9319.0)

プロセス、プロセスグループ、 ユーザのいずれかの現在のプライオリティを設定します 。プライオリティの設定に成功した場合は 0 を返します。

プロセス、プロセスグループ、
ユーザのいずれかの現在のプライオリティを設定します
。プライオリティの設定に成功した場合は 0 を返します。

@param which プライオリティを設定する対象の種類を以下の定数のいずれかで指定します。

* Process::PRIO_PROCESS
* Process::PRIO_PGRP
* Process::PRIO_USER

@param who which の値にしたがってプロセス ID、プロセスグループ ID、ユーザ ID のいずれかを整数で指定します。

@param prio プライオリティを -20 から 20 までの整数で設...

Process.#setrlimit(resource, cur_limit, max_limit) -> nil (9319.0)

カレントプロセスでのリソースの制限値を設定します。

カレントプロセスでのリソースの制限値を設定します。

@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。

@param limit resource によって意味が決まる制限値を表す整数もしくは定数を指定します。
soft limit と hard limit 両方にこの値が使われます。

@param cur_limit 現在の制限値(soft limit)を表す整数もしくは定数を指定します。

@param max_limit soft limit として設定可能な最大値(hard limit)を表す整...

絞り込み条件を変える

Process.#setrlimit(resource, limit) -> nil (9319.0)

カレントプロセスでのリソースの制限値を設定します。

カレントプロセスでのリソースの制限値を設定します。

@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。

@param limit resource によって意味が決まる制限値を表す整数もしくは定数を指定します。
soft limit と hard limit 両方にこの値が使われます。

@param cur_limit 現在の制限値(soft limit)を表す整数もしくは定数を指定します。

@param max_limit soft limit として設定可能な最大値(hard limit)を表す整...

Process.#argv0 -> String (9301.0)

現在実行中の Ruby スクリプトの名前を表す文字列です。$0 を更新して も本メソッドの戻り値への影響はありません。

現在実行中の Ruby スクリプトの名前を表す文字列です。$0 を更新して
も本メソッドの戻り値への影響はありません。

本メソッドは 2.1 以降でグローバル変数を用いないで現在実行中の Ruby スク
リプトの名前を表す文字列を取得する手段として提供されました。

@see Process.#setproctitle, $0

Process.#daemon(nochdir = nil, noclose = nil) -> 0 (9301.0)

プロセスから制御端末を切り離し、 バックグラウンドにまわってデーモンとして動作させます。

プロセスから制御端末を切り離し、
バックグラウンドにまわってデーモンとして動作させます。

カレントディレクトリを / に移動します。
ただし nochdir に真を指定したときにはこの動作は抑制され、
カレントディレクトリは移動しません。

標準入力・標準出力・標準エラー出力を /dev/null にリダイレクトします。
ただし noclose に真を指定したときにはこの動作は抑制され、
リダイレクトは行なわれません。


@param nochdir true を指定した場合、カレントディレクトリを移動しません。

@param noclose true を指定した場合、標準入力・標準出...

Process.#detach(pid) -> Thread (9301.0)

子プロセス pid の終了を監視するスレッドを生成して返します。 生成したスレッドは子プロセスが終了した後に終了ステータス (Process::Status) を返します。 指定した子プロセスが存在しなければ即座に nil で終了します。

子プロセス pid の終了を監視するスレッドを生成して返します。
生成したスレッドは子プロセスが終了した後に終了ステータス (Process::Status) を返します。
指定した子プロセスが存在しなければ即座に nil で終了します。

@param pid 子スレッドのプロセス ID を整数で指定します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

pid = fork {
# child
sleep 3
}

p pid # => 7762
th...

Process.#egid -> Integer (9301.0)

カレントプロセスの実効グループ ID を整数で返します。

カレントプロセスの実効グループ ID を整数で返します。

@see getegid(2)

絞り込み条件を変える

Process.#euid -> Integer (9301.0)

カレントプロセスの実効ユーザ ID を整数で返します。

カレントプロセスの実効ユーザ ID を整数で返します。

@see geteuid(2)

Process.#getpgid(pid) -> Integer (9301.0)

プロセス ID が pid であるプロセスのプロセスグループ ID を整数で返します。

プロセス ID が pid であるプロセスのプロセスグループ ID を整数で返します。

@param pid プロセス ID を整数で指定します。0 の時はカレントプロセス ID を指定したのと同じです。

@raise Errno::EXXX プロセスグループの取得に失敗した場合に発生します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see getpgid(2)

Process.#getpgrp -> Integer (9301.0)

現在のプロセスのプロセスグループ ID を整数で返します。

現在のプロセスのプロセスグループ ID を整数で返します。

@raise Errno::EXXX プロセスグループの取得に失敗した場合に発生します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see getpgrp(2)

Process.#getpriority(which, who) -> Integer (9301.0)

which に従いプロセス、プロセスグループ、ユーザのいずれかの現在のプライオリティを整数で返します。

which に従いプロセス、プロセスグループ、ユーザのいずれかの現在のプライオリティを整数で返します。

@param which プライオリティの種類を次の定数で指定します。 Process::PRIO_PROCESS,
Process::PRIO_PGRP, Process::PRIO_USER。

@param who which の値にしたがってプロセス ID、プロセスグループ ID、ユーザ ID のいずれかを整数で指定します。

@raise Errno::EXXX プライオリティの取得に失敗した場合に発生します。

@raise NotImplement...

Process.#getsid(pid = 0) -> Integer (9301.0)

引数 pid で指定されたプロセスのセッション ID を返します。

引数 pid で指定されたプロセスのセッション ID を返します。

@param pid プロセス ID を整数で指定します。省略した場合、0 を指定した場
合は現在のプロセスの ID を指定した場合と同じ動作になります。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されて
いない場合に発生します。

Process.getsid() # => 27422
Process.getsid(0) # => 274...

絞り込み条件を変える

Process.#gid -> Integer (9301.0)

カレントプロセスの実グループ ID を返します。

カレントプロセスの実グループ ID を返します。

@see getgid(2)

Process.#groups -> [Integer] (9301.0)

補助グループ ID の配列を返します(実効グループ ID を含むかも知れません)。

補助グループ ID の配列を返します(実効グループ ID を含むかも知れません)。

返される配列の最大要素数は Process.#maxgroups です。

このメソッドは getgroups(2) の単純なラッパーです。
このことは以下の特徴がプラットフォームに依存することを意味します。

* 結果がソートされているかどうか
* 結果が実効グループ ID を含むかどうか
* グループ ID が重複している可能性があるかどうか

ソート済みで重複のないグループ ID の配列の取得は以下のようにできます:

//emlist[][ruby]{
Process.groups.uniq....

Process.#initgroups(user, group) -> [Integer] (9301.0)

user が属するグループのリストを更新し、group をそのリストに加えます。

user が属するグループのリストを更新し、group をそのリストに加えます。

このメソッドを呼ぶには root 権限が必要です。

@param user ユーザ名を表す文字列で指定します。

@param group ユーザグループ ID を整数で指定します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

Process.#maxgroups -> Integer (9301.0)

設定できる補助グループ ID の数を指定します。

設定できる補助グループ ID の数を指定します。

実際に返される補助グループ ID の数よりも少ない値を設定していると、
Process.#groups で例外が発生します。

@param num 整数を指定します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

Process.#pid -> Integer (9301.0)

カレントプロセスのプロセス ID を返します。変数 $$ の値と同じです。

カレントプロセスのプロセス ID を返します。変数 $$
の値と同じです。

@see getpid(2)

絞り込み条件を変える

Process.#ppid -> Integer (9301.0)

親プロセスのプロセス ID を返します。UNIX では実際の親プロセスが終 了した後は ppid は 1 (initの pid)になります。

親プロセスのプロセス ID を返します。UNIX では実際の親プロセスが終
了した後は ppid は 1 (initの pid)になります。

@see getppid(2)

Process.#setpgid(pid, pgrp) -> 0 (9301.0)

プロセス ID が pid であるプロセスのプロセスグループを pgrp に設定します。

プロセス ID が pid であるプロセスのプロセスグループを pgrp に設定します。

@param pid プロセス ID を整数で指定します。pid が 0 の時はカレントプロセスの ID を指定したのと同じです。
プロセスグループの設定に成功した場合は 0 を返します。

@param pgrp プロセスグループ ID を整数で指定します。pgrp が 0 の時は pid を指定したのと同じです。

@raise Errno::EXXX プロセスグループの設定に失敗した場合に発生します。

@raise NotImplementedError メソッドが現在の...

Process.#setpgrp -> 0 (9301.0)

カレントプロセスの ID と同じ ID をもつプロセスグループを作成し、カレントプロセスをそのリーダーにします。 Process.#setpgid(0, 0) と同じです。

カレントプロセスの ID と同じ ID をもつプロセスグループを作成し、カレントプロセスをそのリーダーにします。
Process.#setpgid(0, 0) と同じです。

@raise Errno::EXXX プロセスグループの設定に失敗した場合に発生します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

fork do
p [Process.pid, Process.getpgrp]
p Process.setpgrp
p [Process.pid, Process.getpgrp]
...

Process.#setsid -> Integer (9301.0)

新しいセッションを作成して、tty を切り離します。デーモンを簡単に作 ることができます。セッション ID を返します。

新しいセッションを作成して、tty を切り離します。デーモンを簡単に作
ることができます。セッション ID を返します。

@raise Errno::EXXX セッションの作成に失敗した場合に発生します。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see setsid(2)

Process.#uid -> Integer (9301.0)

プロセスの実ユーザ ID を返します。

プロセスの実ユーザ ID を返します。

@see getuid(2)

絞り込み条件を変える

Process.#warmup -> true (9301.0)

RubyVMにアプリケーションの起動が終了したこと及び、アプリケーションの最適化に適したタイミングであることを通知します。

RubyVMにアプリケーションの起動が終了したこと及び、アプリケーションの最適化に適したタイミングであることを通知します。

アプリケーションがプリフォークモデルでデプロイされる場合は、最初のフォークが行なわれる前に元のプロセスで呼び出しされることが推奨されます。
本メソッドが行う最適化は実装依存であり、将来的に予告なく変更される可能性があります。

CRubyではメジャーGCを実行し以下のことをします:
(1) ヒープを圧縮します
(2) GCされなかった全ての新世代オブジェクトを古い世代に昇格します
(3) 全ての文字列のcoderange([m:String#valid_enco...

Process.abort -> () (9301.0)

関数 Kernel.#abort と同じです。

関数 Kernel.#abort と同じです。

@param message 終了時のメッセージを文字列で指定します。

Process.abort(message) -> () (9301.0)

関数 Kernel.#abort と同じです。

関数 Kernel.#abort と同じです。

@param message 終了時のメッセージを文字列で指定します。

Process.exec(command, *args) -> () (9301.0)

カレントプロセスを与えられた外部コマンドで置き換えます。

カレントプロセスを与えられた外部コマンドで置き換えます。


=== 引数の解釈

引数が一つだけ与えられた場合、command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。

引数が複数与えられた場合、第 2 引数以降は command に直接渡され、
インタプリタから直接実行されます。

第 1 引数が 2 要素の配列の場合、第 1 要素の文字列が実際に起動する
プログラムのパスで、第 2 要素が「みせかけ...

Process.exit!(status = false) -> () (9301.0)

関数 Kernel.#exit! と同じです。

関数 Kernel.#exit! と同じです。

@param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。

@see _exit(2)

絞り込み条件を変える

Process.exit(status = true) -> () (9301.0)

プロセスを終了します。関数 Kernel.#exit と同じです。

プロセスを終了します。関数 Kernel.#exit と同じです。

@param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。

@see exit(3)

Process.fork -> Integer | nil (9301.0)

子プロセスを生成します。関数 Kernel.#fork と同じです。

子プロセスを生成します。関数 Kernel.#fork と同じです。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see fork(2)

Process.fork { ... } -> Integer | nil (9301.0)

子プロセスを生成します。関数 Kernel.#fork と同じです。

子プロセスを生成します。関数 Kernel.#fork と同じです。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

@see fork(2)

Process.spawn(cmd, *arg) -> Integer (9301.0)

関数 Kernel.#spawn と同じです。

関数 Kernel.#spawn と同じです。

@param cmd Kernel.#spawn と同じです。

@param arg Kernel.#spawn と同じです。

@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。

Process::CLOCK_BOOTTIME -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

絞り込み条件を変える

Process::CLOCK_BOOTTIME_ALARM -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_MONOTONIC -> Integer | Symbol (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては :MACH_ABSOLUTE_TIME_BASED_CLOCK_MONOTONIC です。
システムによっては定義されていません。

Process::CLOCK_MONOTONIC_COARSE -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_MONOTONIC_FAST -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_MONOTONIC_PRECISE -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

絞り込み条件を変える

Process::CLOCK_MONOTONIC_RAW -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_MONOTONIC_RAW_APPROX -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_PROF -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

Process::CLOCK_REALTIME -> Integer | Symbol (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては :GETTIMEOFDAY_BASED_CLOCK_REALTIME です。
システムによっては定義されていません。

Process::CLOCK_REALTIME_ALARM -> Integer (9301.0)

Process.#clock_gettime で使われます。

Process.#clock_gettime で使われます。

システムによっては定義されていません。

絞り込み条件を変える

<< 1 2 3 ... > >>