るりまサーチ

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

別のキーワード

  1. _builtin puts
  2. csv puts
  3. stringio puts
  4. zlib puts
  5. openssl puts

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 > >>

Kernel.#sleep -> Integer (18145.0)

sec 秒だけプログラムの実行を停止します。

...スレッドからの Thread#run
などで明示的に起こさない限り永久にスリープします。Thread#runを呼ぶとその時点で
sleep
の実行が中断されます。

@param sec 停止する秒数を非負の数値で指定します。浮動小数点数も指定できます。...
...省略された場合、永久にスリープします。

@return 実際に停止していた秒数 (整数に丸められた値) です。

//emlist[例][ruby]{
it = Thread.new do
sleep

puts
'it_end'
end

re = sleep 2.11
puts
re
it.run
re2 = sleep 0.76
puts
re2
#=> 2
# it_end
# 1
//}...

Kernel.#sleep(sec) -> Integer (18145.0)

sec 秒だけプログラムの実行を停止します。

...スレッドからの Thread#run
などで明示的に起こさない限り永久にスリープします。Thread#runを呼ぶとその時点で
sleep
の実行が中断されます。

@param sec 停止する秒数を非負の数値で指定します。浮動小数点数も指定できます。...
...省略された場合、永久にスリープします。

@return 実際に停止していた秒数 (整数に丸められた値) です。

//emlist[例][ruby]{
it = Thread.new do
sleep

puts
'it_end'
end

re = sleep 2.11
puts
re
it.run
re2 = sleep 0.76
puts
re2
#=> 2
# it_end
# 1
//}...

Kernel.#fork -> Integer | nil (37.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:...
...81329

# 子プロセスでの処理
sleep
(1)
end
//}

//emlist[ブロックを指定した場合][ruby]{
child_pid = fork do
puts
"child process. pid: #{Process.pid}"
# => child process. pid: 79602

# 子プロセスでの処理
sleep
(1)
end

puts
"parent process. pid: #{Process.pid},...

Kernel.#fork { ... } -> Integer | nil (37.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:...
...81329

# 子プロセスでの処理
sleep
(1)
end
//}

//emlist[ブロックを指定した場合][ruby]{
child_pid = fork do
puts
"child process. pid: #{Process.pid}"
# => child process. pid: 79602

# 子プロセスでの処理
sleep
(1)
end

puts
"parent process. pid: #{Process.pid},...

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

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

...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

例 独自の例外...
.../usr/bin/env ruby

require 'timeout'

class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep
(30)
}
rescue MYError => err
puts
"MYError"
puts
err
end

=== 注意

timeout による割り込みは Thread によって実現されています。
C 言語...
...com = IO.popen("./loop.sh")
pid = com.pid
while line = com.gets
print line
end
}
rescue Timeout::Error => err
puts
"timeout: shell execution."
Process.kill('SIGINT', pid)
printf "[result]\t%s", com.read
com.close unless com.nil?
end

#止ま...

絞り込み条件を変える

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

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

...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

例 独自の例外...
.../usr/bin/env ruby

require 'timeout'

class MYError < Exception;end
begin
Timeout.timeout(5, MYError) {
sleep
(30)
}
rescue MYError => err
puts
"MYError"
puts
err
end

=== 注意

timeout による割り込みは Thread によって実現されています。
C 言語...
...com = IO.popen("./loop.sh")
pid = com.pid
while line = com.gets
print line
end
}
rescue Timeout::Error => err
puts
"timeout: shell execution."
Process.kill('SIGINT', pid)
printf "[result]\t%s", com.read
com.close unless com.nil?
end

#止ま...

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

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

...t[例][ruby]{
# a.rb
exec ['sleep', 'mysleep'], '600'
//}

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

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

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...

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

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

...t[例][ruby]{
# a.rb
exec ['sleep', 'mysleep'], '600'
//}

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

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

@see Kernel.#system,Kernel.#`,Kernel.#spawn,Kernel.#fork,IO.popen,IO.pipe,Kernel.#open,exec(3)...

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

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

...:EXXX 起動に失敗し、ruby インタプリタに制御が戻った場合に発生します。

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

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

$ ruby a.rb
実行前
...
<< 1 2 > >>