ライブラリ
- ビルトイン (242)
-
shell
/ command-processor (2)
クラス
- Enumerator (3)
- Hash (9)
- IO (1)
- LocalJumpError (2)
- Method (3)
- Module (2)
- Object (5)
- Proc (17)
-
Process
:: Status (15) -
Process
:: Tms (8) -
RubyVM
:: InstructionSequence (3) -
Shell
:: CommandProcessor (2) - String (3)
- Symbol (1)
- Thread (2)
- UnboundMethod (2)
モジュール
- Enumerable (4)
- Kernel (13)
- Marshal (4)
- ObjectSpace (3)
- Process (88)
-
Process
:: GID (11) -
Process
:: Sys (15) -
Process
:: UID (11) - Signal (2)
オブジェクト
- main (2)
キーワード
-
$ ? (1) - & (1)
- == (1)
- === (1)
- >> (1)
- Binding (1)
-
CLOCK
_ BOOTTIME (1) -
CLOCK
_ BOOTTIME _ ALARM (1) -
CLOCK
_ MONOTONIC (1) -
CLOCK
_ MONOTONIC _ COARSE (1) -
CLOCK
_ MONOTONIC _ FAST (1) -
CLOCK
_ MONOTONIC _ PRECISE (1) -
CLOCK
_ MONOTONIC _ RAW (1) -
CLOCK
_ MONOTONIC _ RAW _ APPROX (1) -
CLOCK
_ PROCESS _ CPUTIME _ ID (1) -
CLOCK
_ PROF (1) -
CLOCK
_ REALTIME (1) -
CLOCK
_ REALTIME _ ALARM (1) -
CLOCK
_ REALTIME _ COARSE (1) -
CLOCK
_ REALTIME _ FAST (1) -
CLOCK
_ REALTIME _ PRECISE (1) -
CLOCK
_ SECOND (1) -
CLOCK
_ THREAD _ CPUTIME _ ID (1) -
CLOCK
_ UPTIME (1) -
CLOCK
_ UPTIME _ FAST (1) -
CLOCK
_ UPTIME _ PRECISE (1) -
CLOCK
_ UPTIME _ RAW (1) -
CLOCK
_ UPTIME _ RAW _ APPROX (1) -
CLOCK
_ VIRTUAL (1) - EPROCLIM (1)
- EPROCUNAVAIL (1)
- GID (1)
- InstructionSequence (1)
- LocalJumpError (1)
- Method (1)
-
PRIO
_ PGRP (1) -
PRIO
_ PROCESS (1) -
PRIO
_ USER (1) - Process (1)
-
RLIMIT
_ AS (1) -
RLIMIT
_ CORE (1) -
RLIMIT
_ CPU (1) -
RLIMIT
_ DATA (1) -
RLIMIT
_ FSIZE (1) -
RLIMIT
_ MEMLOCK (1) -
RLIMIT
_ NOFILE (1) -
RLIMIT
_ NPROC (1) -
RLIMIT
_ RSS (1) -
RLIMIT
_ SBSIZE (1) -
RLIMIT
_ STACK (1) -
RLIM
_ INFINITY (1) -
RLIM
_ SAVED _ CUR (1) -
RLIM
_ SAVED _ MAX (1) - Status (1)
- Sys (1)
- Tms (1)
- UID (1)
- WNOHANG (1)
- WUNTRACED (1)
- [] (2)
- abort (2)
-
add
_ trace _ func (1) - argv0 (1)
- arity (1)
-
at
_ exit (1) - binding (1)
- call (1)
-
change
_ privilege (2) -
clock
_ gettime (1) -
close
_ on _ exec= (1) - coredump? (1)
- cstime (1)
- cstime= (1)
- curry (2)
- cutime (1)
- cutime= (1)
- daemon (1)
-
def
_ builtin _ commands (1) - default (2)
-
default
_ proc (1) -
default
_ proc= (1) -
define
_ finalizer (2) -
define
_ method (4) -
define
_ singleton _ method (2) - detach (1)
- detect (2)
- disasm (1)
- disassemble (1)
- dump (2)
- egid (1)
- egid= (1)
- eid (2)
- eid= (2)
- encode (3)
- euid (1)
- euid= (1)
- exec (1)
- exit (1)
- exit! (1)
-
exit
_ value (1) - exited? (1)
- exitstatus (1)
- find (2)
- fork (2)
-
from
_ name (2) - getegid (1)
- geteuid (1)
- getgid (1)
- getpgid (1)
- getpgrp (1)
- getpriority (1)
- getrlimit (1)
- getsid (1)
- getuid (1)
- gid (1)
- gid= (1)
-
grant
_ privilege (2) - groups (1)
- groups= (1)
- hash (1)
- initgroups (1)
- inspect (2)
-
install
_ builtin _ commands (1) - issetugid (1)
- kill (1)
- lambda (2)
- lambda? (1)
- load (1)
- maxgroups (1)
- maxgroups= (1)
- new (6)
- of (1)
- parameters (3)
- pid (2)
- ppid (1)
- proc (2)
-
re
_ exchange (2) -
re
_ exchangeable? (2) - reason (1)
- restore (1)
- rid (2)
- send (2)
-
set
_ trace _ func (2) - setegid (1)
- seteuid (1)
- setgid (1)
- setpgid (1)
- setpgrp (1)
- setpriority (1)
- setproctitle (1)
- setregid (1)
- setresgid (1)
- setresuid (1)
- setreuid (1)
- setrgid (1)
- setrlimit (2)
- setruid (1)
- setsid (1)
- setuid (1)
- shift (1)
-
sid
_ available? (2) - signaled? (1)
- size (1)
-
source
_ location (3) - spawn (1)
- stime (1)
- stime= (1)
- stopped? (1)
- stopsig (1)
- success? (1)
- switch (4)
- termsig (1)
- times (1)
-
to
_ i (1) -
to
_ proc (4) -
to
_ s (2) -
trace
_ var (3) - trap (4)
- uid (1)
- uid= (1)
-
undefine
_ finalizer (1) -
untrace
_ var (1) - utime (1)
- utime= (1)
-
values
_ at (1) - wait (1)
- wait2 (1)
- waitall (1)
- waitpid (1)
- waitpid2 (1)
- yield (1)
検索結果
-
Proc (138631.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 (105340.0) -
self を返します。
self を返します。
//emlist[例][ruby]{
pr = proc {}
p pr == pr.to_proc # => true
//} -
Proc
# curry -> Proc (87481.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 (87481.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
# lambda? -> bool (87469.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 (87469.0) -
ブロックをコンテキストとともにオブジェクト化して返します。
ブロックをコンテキストとともにオブジェクト化して返します。
ブロックを指定しない場合、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the given block using Proc.new is deprecated; use `&block` instead」
が出力され、Ruby 3.0 では
ArgumentError (tried to create Proc object without a block)
が発生します。
ブロックを指定しなければ、このメソッドを呼び出したメソッドが
ブロックを伴うと... -
Proc
. new { . . . } -> Proc (87469.0) -
ブロックをコンテキストとともにオブジェクト化して返します。
ブロックをコンテキストとともにオブジェクト化して返します。
ブロックを指定しない場合、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the given block using Proc.new is deprecated; use `&block` instead」
が出力され、Ruby 3.0 では
ArgumentError (tried to create Proc object without a block)
が発生します。
ブロックを指定しなければ、このメソッドを呼び出したメソッドが
ブロックを伴うと... -
Proc
# binding -> Binding (87103.0) -
Proc オブジェクトが保持するコンテキストを Binding オブジェクトで返します。
Proc オブジェクトが保持するコンテキストを
Binding オブジェクトで返します。
//emlist[例][ruby]{
def fred(param)
proc {}
end
sample_proc = fred(99)
eval("param", sample_proc.binding) # => 99
//} -
Proc
# source _ location -> [String , Integer] | nil (87073.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
# parameters -> [object] (87067.0) -
Proc オブジェクトの引数の情報を返します。
Proc オブジェクトの引数の情報を返します。
Proc オブジェクトが引数を取らなければ空の配列を返します。引数を取る場合は、配列の配列を返し、
各配列の要素は引数の種類に対応した以下のような Symbol と、引数名を表す Symbol の 2 要素です。
: :req
必須の引数
: :opt
デフォルト値が指定されたオプショナルな引数
: :rest
* で指定された残りすべての引数
: :keyreq
必須のキーワード引数
: :key
デフォルト値が指定されたオプショナルなキーワード引数
: :keyrest
** で指定された残りのキーワード引数
: :block... -
Proc
# arity -> Integer (87049.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
# ===(*arg) -> () (87037.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) -> () (87037.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) -> () (87037.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
# inspect -> String (87037.0) -
self の文字列表現を返します。
self の文字列表現を返します。
可能なら self を生成したソースファイル名、行番号を含みます。
//emlist[例][ruby]{
p Proc.new {
true
}.to_s
# => "#<Proc:0x0x401a880c@-:3>"
//} -
Proc
# to _ s -> String (87037.0) -
self の文字列表現を返します。
self の文字列表現を返します。
可能なら self を生成したソースファイル名、行番号を含みます。
//emlist[例][ruby]{
p Proc.new {
true
}.to_s
# => "#<Proc:0x0x401a880c@-:3>"
//} -
Proc
# yield(*arg) -> () (87037.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
# hash -> Integer (87001.0) -
self のハッシュ値を返します。
self のハッシュ値を返します。 -
Process
. # setproctitle(title) -> String (51301.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 (51301.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :GETRUSAGE_BASED_CLOCK_PROCESS_CPUTIME_ID です。
システムによっては定義されていません。 -
Process
:: PRIO _ PROCESS -> Integer (51301.0) -
対象とするプライオリティがプロセスプライオリティであることを表す定数です。
対象とするプライオリティがプロセスプライオリティであることを表す定数です。
Process.#getpriority または Process.#setpriority で使われます。 -
Process
:: RLIMIT _ NPROC -> Integer (51301.0) -
リソースの種類がユーザのプロセスの最大数であることを示す定数です。
リソースの種類がユーザのプロセスの最大数であることを示す定数です。
Process.#getrlimit、Process.#setrlimit で使われます。
システムによっては定義されていません。 -
Symbol
# to _ proc -> Proc (42763.0) -
self に対応する Proc オブジェクトを返します。
self に対応する Proc オブジェクトを返します。
生成される Proc オブジェクトを呼びだす(Proc#call)と、
Proc#callの第一引数をレシーバとして、 self という名前のメソッドを
残りの引数を渡して呼びだします。
//emlist[明示的に呼ぶ例][ruby]{
:to_i.to_proc["ff", 16] # => 255 ← "ff".to_i(16)と同じ
//}
//emlist[暗黙に呼ばれる例][ruby]{
# メソッドに & とともにシンボルを渡すと
# to_proc が呼ばれて Proc 化され、
# それがブロックとして渡される... -
Hash
# default _ proc -> Proc | nil (42709.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 (42691.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 (42691.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
# default _ proc=(pr) (42532.0) -
ハッシュのデフォルト値を返す Proc オブジェクトを 変更します。
ハッシュのデフォルト値を返す Proc オブジェクトを
変更します。
以前のデフォルトは値(Hash#default)の場合も
Proc の場合(Hash#default_proc)でも上書きされます。
引数には to_proc で Proc オブジェクトに変換できる
オブジェクトも受け付けます。
nil を指定した場合は現在の Hash#default_proc をクリアします。
@param pr デフォルト値を返す手続きオブジェクト
//emlist[例][ruby]{
h = {}
h.default_proc = proc do |hash, key|
hash[ke... -
Errno
:: EPROCLIM (42001.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Errno
:: EPROCUNAVAIL (42001.0) -
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。
システムコールのエラーコードを表す例外クラスです。詳細は Errno::EXXX を参照してください。 -
Process (42001.0)
-
UNIX のプロセスを管理するモジュールです。
UNIX のプロセスを管理するモジュールです。
Process がプロセスを表現するクラスではなく、プロセスに対する操作
をまとめたモジュールであることに注意してください。
ユーザ ID・グループ ID を操作するシステムコールを直接呼ぶために Process::Sys が提供されています。
ポータブルにユーザ ID・グループ ID を操作するためのモジュール Process::UID, Process::GID
も提供されています。 -
Kernel
. # proc -> Proc (34399.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。
ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。
ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。
ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr... -
Kernel
. # proc { . . . } -> Proc (34399.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。
ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトとして返します。呼び出し元のメソッドがブロックなし
で呼ばれると ArgumentError 例外が発生します。
ただし、ブロックを指定しない呼び出しは推奨されていません。呼び出し元のメソッドで指定されたブロック
を得たい場合は明示的に & 引数でうけるべきです。
ブロックを指定しない lambda は Ruby 2.6 までは警告メッセージ
「warning: tr... -
Process
. # times -> Process :: Tms (33301.0) -
自身のプロセスとその子プロセスが消費したユーザ/システム CPU 時間の積算を Process::Tms オブジェクトで返します。 時間の単位は秒で、浮動小数点数で与えられます。
自身のプロセスとその子プロセスが消費したユーザ/システム CPU 時間の積算を
Process::Tms オブジェクトで返します。
時間の単位は秒で、浮動小数点数で与えられます。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see Process::Tms -
Process
. # wait2(pid = -1 , flags = 0) -> [Integer , Process :: Status] | nil (33301.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
. # waitall -> [[Integer , Process :: Status]] (33301.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
. # waitpid2(pid = -1 , flags = 0) -> [Integer , Process :: Status] | nil (33301.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
. # argv0 -> String (33001.0) -
現在実行中の Ruby スクリプトの名前を表す文字列です。$0 を更新して も本メソッドの戻り値への影響はありません。
現在実行中の Ruby スクリプトの名前を表す文字列です。$0 を更新して
も本メソッドの戻り値への影響はありません。
本メソッドは 2.1 以降でグローバル変数を用いないで現在実行中の Ruby スク
リプトの名前を表す文字列を取得する手段として提供されました。
@see Process.#setproctitle, $0 -
Process
. # clock _ gettime(clock _ id , unit=:float _ second) -> Float | Integer (33001.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
. # daemon(nochdir = nil , noclose = nil) -> 0 (33001.0) -
プロセスから制御端末を切り離し、 バックグラウンドにまわってデーモンとして動作させます。
プロセスから制御端末を切り離し、
バックグラウンドにまわってデーモンとして動作させます。
カレントディレクトリを / に移動します。
ただし nochdir に真を指定したときにはこの動作は抑制され、
カレントディレクトリは移動しません。
標準入力・標準出力・標準エラー出力を /dev/null にリダイレクトします。
ただし noclose に真を指定したときにはこの動作は抑制され、
リダイレクトは行なわれません。
@param nochdir true を指定した場合、カレントディレクトリを移動しません。
@param noclose true を指定した場合、標準入力・標準出... -
Process
. # detach(pid) -> Thread (33001.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 (33001.0) -
カレントプロセスの実効グループ ID を整数で返します。
カレントプロセスの実効グループ ID を整数で返します。
@see getegid(2) -
Process
. # egid=(gid) (33001.0) -
カレントプロセスの実効グループ ID を gid に設定します。
カレントプロセスの実効グループ ID を gid に設定します。
動作の詳細はプラットフォームに依存します。
実効グループ ID 以外のグループ ID も変更されるかも知れません。
@param gid 実効グループ ID を整数で指定します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see Process::GID.#eid= -
Process
. # euid -> Integer (33001.0) -
カレントプロセスの実効ユーザ ID を整数で返します。
カレントプロセスの実効ユーザ ID を整数で返します。
@see geteuid(2) -
Process
. # euid=(uid) (33001.0) -
カレントプロセスの実効ユーザ ID を uid に設定します。
カレントプロセスの実効ユーザ ID を uid に設定します。
動作の詳細はプラットフォームに依存します。
実効ユーザ ID 以外のユーザ ID も変更されるかも知れません。
@param uid 実効ユーザ ID を整数で指定します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see Process::UID.#eid= -
Process
. # getpgid(pid) -> Integer (33001.0) -
プロセス ID が pid であるプロセスのプロセスグループ ID を整数で返します。
プロセス ID が pid であるプロセスのプロセスグループ ID を整数で返します。
@param pid プロセス ID を整数で指定します。0 の時はカレントプロセス ID を指定したのと同じです。
@raise Errno::EXXX プロセスグループの取得に失敗した場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see getpgid(2) -
Process
. # getpgrp -> Integer (33001.0) -
現在のプロセスのプロセスグループ ID を整数で返します。
現在のプロセスのプロセスグループ ID を整数で返します。
@raise Errno::EXXX プロセスグループの取得に失敗した場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see getpgrp(2) -
Process
. # getpriority(which , who) -> Integer (33001.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
. # getrlimit(resource) -> [Integer] (33001.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
. # getsid(pid = 0) -> Integer (33001.0) -
引数 pid で指定されたプロセスのセッション ID を返します。
引数 pid で指定されたプロセスのセッション ID を返します。
@param pid プロセス ID を整数で指定します。省略した場合、0 を指定した場
合は現在のプロセスの ID を指定した場合と同じ動作になります。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されて
いない場合に発生します。
Process.getsid() # => 27422
Process.getsid(0) # => 274... -
Process
. # gid -> Integer (33001.0) -
カレントプロセスの実グループ ID を返します。
カレントプロセスの実グループ ID を返します。
@see getgid(2) -
Process
. # gid=(gid) (33001.0) -
カレントプロセスの実グループ ID を gid に設定します。
カレントプロセスの実グループ ID を gid に設定します。
動作の詳細はプラットフォームに依存します。
実グループ ID 以外のグループ ID も変更されるかも知れません。
@param gid 実グループ ID を整数で指定します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see Process::GID -
Process
. # groups -> [Integer] (33001.0) -
補助グループ ID の配列を返します(実効グループ ID を含むかも知れません)。
補助グループ ID の配列を返します(実効グループ ID を含むかも知れません)。
返される配列の最大要素数は Process.#maxgroups です。
このメソッドは getgroups(2) の単純なラッパーです。
このことは以下の特徴がプラットフォームに依存することを意味します。
* 結果がソートされているかどうか
* 結果が実効グループ ID を含むかどうか
* グループ ID が重複している可能性があるかどうか
ソート済みで重複のないグループ ID の配列の取得は以下のようにできます:
//emlist[][ruby]{
Process.groups.uniq.... -
Process
. # groups=(gids) (33001.0) -
補助グループを設定します。
補助グループを設定します。
root だけがこのメソッドを呼ぶことができます。
@param gids 補助グループ ID の配列を指定します。補助グループ ID は整数かグループ名を表す文字列です。
@raise ArgumentError 設定する補助グループ ID の数が Process.#maxgroups の
数を越えている場合に発生します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。... -
Process
. # initgroups(user , group) -> [Integer] (33001.0) -
user が属するグループのリストを更新し、group をそのリストに加えます。
user が属するグループのリストを更新し、group をそのリストに加えます。
このメソッドを呼ぶには root 権限が必要です。
@param user ユーザ名を表す文字列で指定します。
@param group ユーザグループ ID を整数で指定します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。 -
Process
. # kill(signal , pid , *rest) -> Integer (33001.0) -
pid で指定されたプロセスにシグナルを送ります。signal はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。 全てのシグナル送信に成功した場合、指定した pid の総数を返します。
pid で指定されたプロセスにシグナルを送ります。signal
はシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。
全てのシグナル送信に成功した場合、指定した pid の総数を返します。
@param signal シグナルをシグナル番号(整数)かその名前(文字列またはSymbol)で指定します。負の値を持つシグナル(あるいはシグナル名の前に-)を指定すると、プロセスではなくプロセスグループにシグナルを送ります。
@param pid シグナルを送りたいプロセスのプロセス ID を整数で指定します。ただし、0 以下の場合は以下のような意味になります。
* 0 ... -
Process
. # maxgroups -> Integer (33001.0) -
設定できる補助グループ ID の数を指定します。
設定できる補助グループ ID の数を指定します。
実際に返される補助グループ ID の数よりも少ない値を設定していると、
Process.#groups で例外が発生します。
@param num 整数を指定します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。 -
Process
. # maxgroups=(num) (33001.0) -
設定できる補助グループ ID の数を指定します。
設定できる補助グループ ID の数を指定します。
実際に返される補助グループ ID の数よりも少ない値を設定していると、
Process.#groups で例外が発生します。
@param num 整数を指定します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。 -
Process
. # pid -> Integer (33001.0) -
カレントプロセスのプロセス ID を返します。変数 $$ の値と同じです。
カレントプロセスのプロセス ID を返します。変数 $$
の値と同じです。
@see getpid(2) -
Process
. # ppid -> Integer (33001.0) -
親プロセスのプロセス ID を返します。UNIX では実際の親プロセスが終 了した後は ppid は 1 (initの pid)になります。
親プロセスのプロセス ID を返します。UNIX では実際の親プロセスが終
了した後は ppid は 1 (initの pid)になります。
@see getppid(2) -
Process
. # setpgid(pid , pgrp) -> 0 (33001.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 (33001.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
. # setpriority(which , who , prio) -> 0 (33001.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 (33001.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 (33001.0) -
カレントプロセスでのリソースの制限値を設定します。
カレントプロセスでのリソースの制限値を設定します。
@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。
@param limit resource によって意味が決まる制限値を表す整数もしくは定数を指定します。
soft limit と hard limit 両方にこの値が使われます。
@param cur_limit 現在の制限値(soft limit)を表す整数もしくは定数を指定します。
@param max_limit soft limit として設定可能な最大値(hard limit)を表す整... -
Process
. # setsid -> Integer (33001.0) -
新しいセッションを作成して、tty を切り離します。デーモンを簡単に作 ることができます。セッション ID を返します。
新しいセッションを作成して、tty を切り離します。デーモンを簡単に作
ることができます。セッション ID を返します。
@raise Errno::EXXX セッションの作成に失敗した場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see setsid(2) -
Process
. # uid -> Integer (33001.0) -
プロセスの実ユーザ ID を返します。
プロセスの実ユーザ ID を返します。
@see getuid(2) -
Process
. # uid=(id) (33001.0) -
プロセスの実ユーザ ID を id に設定します。
プロセスの実ユーザ ID を id に設定します。
動作の詳細はプラットフォームに依存します。
実ユーザ ID 以外のユーザ ID も変更されるかも知れません。
@param id 実ユーザ ID を整数で指定します。
@raise Errno::EXXX 権限がない場合に発生します。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see Process::UID -
Process
. # wait(pid = -1 , flags = 0) -> Integer | nil (33001.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 (33001.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
. abort -> () (33001.0) -
関数 Kernel.#abort と同じです。
関数 Kernel.#abort と同じです。
@param message 終了時のメッセージを文字列で指定します。 -
Process
. abort(message) -> () (33001.0) -
関数 Kernel.#abort と同じです。
関数 Kernel.#abort と同じです。
@param message 終了時のメッセージを文字列で指定します。 -
Process
. exec(command , *args) -> () (33001.0) -
カレントプロセスを与えられた外部コマンドで置き換えます。
カレントプロセスを与えられた外部コマンドで置き換えます。
=== 引数の解釈
引数が一つだけ与えられた場合、command が shell のメタ文字
//emlist{
* ? {} [] <> () ~ & | \ $ ; ' ` " \n
//}
を含む場合、shell 経由で実行されます。
そうでなければインタプリタから直接実行されます。
引数が複数与えられた場合、第 2 引数以降は command に直接渡され、
インタプリタから直接実行されます。
第 1 引数が 2 要素の配列の場合、第 1 要素の文字列が実際に起動する
プログラムのパスで、第 2 要素が「みせかけ... -
Process
. exit!(status = false) -> () (33001.0) -
関数 Kernel.#exit! と同じです。
関数 Kernel.#exit! と同じです。
@param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。
@see _exit(2) -
Process
. exit(status = true) -> () (33001.0) -
プロセスを終了します。関数 Kernel.#exit と同じです。
プロセスを終了します。関数 Kernel.#exit と同じです。
@param status 終了ステータスを boolean か整数で指定します。true の場合は成功を、false は失敗を意味します。
@see exit(3) -
Process
. fork -> Integer | nil (33001.0) -
子プロセスを生成します。関数 Kernel.#fork と同じです。
子プロセスを生成します。関数 Kernel.#fork と同じです。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see fork(2) -
Process
. fork { . . . } -> Integer | nil (33001.0) -
子プロセスを生成します。関数 Kernel.#fork と同じです。
子プロセスを生成します。関数 Kernel.#fork と同じです。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。
@see fork(2) -
Process
. spawn(cmd , *arg) -> Integer (33001.0) -
関数 Kernel.#spawn と同じです。
関数 Kernel.#spawn と同じです。
@param cmd Kernel.#spawn と同じです。
@param arg Kernel.#spawn と同じです。
@raise NotImplementedError メソッドが現在のプラットフォームで実装されていない場合に発生します。 -
Process
:: CLOCK _ BOOTTIME -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ BOOTTIME _ ALARM -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC -> Integer | Symbol (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :MACH_ABSOLUTE_TIME_BASED_CLOCK_MONOTONIC です。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ COARSE -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ FAST -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ PRECISE -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ RAW -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ RAW _ APPROX -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ PROF -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME -> Integer | Symbol (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては :GETTIMEOFDAY_BASED_CLOCK_REALTIME です。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ ALARM -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ COARSE -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ FAST -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ REALTIME _ PRECISE -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ SECOND -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ THREAD _ CPUTIME _ ID -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ FAST -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ PRECISE -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ RAW -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ UPTIME _ RAW _ APPROX -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ VIRTUAL -> Integer (33001.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: GID (33001.0) -
カレントプロセスのグループ ID を操作するためのモジュールです。
カレントプロセスのグループ ID を操作するためのモジュールです。
移植性が考慮されており、プラットフォーム間の違いを吸収するように実装されています。
プラットフォームのシステムコールを直接使いたい場合には Process::Sys
が提供されています。Process::Sys と Process::GID を同時に使うことは推奨されません。
実グループ ID を変更するメソッドは提供されていません。
これは Process::GID.#eid= と Process::GID.#re_exchange を以下のように
組み合わせることによって実現できます。
...