別のキーワード
ライブラリ
- ビルトイン (48)
- benchmark (12)
- openssl (96)
- timeout (21)
-
webrick
/ utils (12)
モジュール
- Benchmark (12)
- Kernel (48)
-
OpenSSL
:: Random (96) - Timeout (21)
-
WEBrick
:: Utils (12)
キーワード
- bmbm (12)
- egd (12)
-
egd
_ bytes (12) -
load
_ random _ file (12) -
pseudo
_ bytes (12) -
random
_ add (12) -
random
_ bytes (12) -
random
_ string (12) - seed (12)
- srand (24)
- timeout (21)
-
write
_ random _ file (12)
検索結果
先頭5件
-
WEBrick
:: Utils . # random _ string(len) -> String (6107.0) -
A-Z, a-z, 0-9 からなる長さ len のランダムな文字列を返します。
...A-Z, a-z, 0-9 からなる長さ len のランダムな文字列を返します。
@param len 得たい文字列の長さを整数で指定します。単位はバイトです。
require 'webrick'
p WEBrick::Utils.random_string(10) #=> "xF0jwU4RJd"... -
OpenSSL
:: Random . # egd _ bytes(filename , length) -> true (3013.0) -
EGD(Entropy Gathering Daemon) から length バイト分のエントロピーを得ます。
...domain socket から EGD に問い合わせ、
指定した大きさのエントロピーを乱数生成器に追加します。
@param filename EGD のソケットのファイル名
@param length 読み込むバイト数
@raise OpenSSL::Random::RandomError
@raise OpenSSL::Random::RandomError... -
OpenSSL
:: Random . # egd(filename) -> true (3007.0) -
EGD(Entropy Gathering Daemon) からエントロピーを得、 乱数生成器に追加します。
...ます。
filename で指定した Unix domain socket から EGD に問い合わせ、
255 バイト分のエントロピーを取得します。
OpenSSL::Random.egd_bytes(filename, 255) と同じです。
@param filename EGD のソケットのファイル名
@raise OpenSSL::Random::RandomError... -
OpenSSL
:: Random . # pseudo _ bytes(len) -> String (3007.0) -
暗号論的な予測不可能性を持たない(が高速な) 乱数生成器によって、 len バイトの ランダムなバイト列を返します。
...暗号論的な予測不可能性を持たない(が高速な)
乱数生成器によって、 len バイトの
ランダムなバイト列を返します。
@param len 必要なランダムバイト列の長さ... -
OpenSSL
:: Random . # seed(str) -> str (3007.0) -
乱数生成器にエントロピーを 「エントロピー予測値 = str のバイト数」として 追加します。
...乱数生成器にエントロピーを
「エントロピー予測値 = str のバイト数」として
追加します。
OpenSSL::Random.random_add(str, str.size) と同じです。
@param str 予測不可能な内容の文字列
@see OpenSSL::Random.#random_add... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (31.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...きは制限時間なしで
ブロックを実行します。
@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(......0"
M=32767
trap 'echo "$S; $m1/($m1+$m2)*4" | bc ; echo "count = $((m1+m2))" ; exit 0' INT
m1=0
m2=0
while true
do
x="($RANDOM/$M)"
y="($RANDOM/$M)"
c=$(echo "$S;$x^2+$y^2 < 1.0" | bc)
echo $x $y $c
if [ $c -eq 1 ]
then
let m1++
else
let m2++... -
Timeout
. # timeout(sec , exception _ class , message) {|i| . . . } -> object (31.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...きは制限時間なしで
ブロックを実行します。
@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(......0"
M=32767
trap 'echo "$S; $m1/($m1+$m2)*4" | bc ; echo "count = $((m1+m2))" ; exit 0' INT
m1=0
m2=0
while true
do
x="($RANDOM/$M)"
y="($RANDOM/$M)"
c=$(echo "$S;$x^2+$y^2 < 1.0" | bc)
echo $x $y $c
if [ $c -eq 1 ]
then
let m1++
else
let m2++... -
Timeout
. # timeout(sec , exception _ class = nil) {|i| . . . } -> object (25.0) -
ブロックを sec 秒の期限付きで実行します。 ブロックの実行時間が制限を過ぎたときは例外 Timeout::Error が発生します。
...す。
@param sec タイムアウトする時間を秒数で指定します.
@param exception_class タイムアウトした時、発生させる例外を指定します.
例 長い計算のタイムアウト
require 'timeout'
def calc_pi(min)
loop do
x = rand
y = rand
x......0"
M=32767
trap 'echo "$S; $m1/($m1+$m2)*4" | bc ; echo "count = $((m1+m2))" ; exit 0' INT
m1=0
m2=0
while true
do
x="($RANDOM/$M)"
y="($RANDOM/$M)"
c=$(echo "$S;$x^2+$y^2 < 1.0" | bc)
echo $x $y $c
if [ $c -eq 1 ]
then
let m1++
else
let m2++... -
Benchmark
. # bmbm(width = 0) {|job| . . . } -> [Benchmark :: Tms] (13.0) -
Benchmark::Job オブジェクトを生成して、それを引数として与えられたブロックを 実行します。
...使用しても、GC などの影響を分離する
ことは保証されません。
@param width ラベルの幅を指定します。
//emlist[][ruby]{
require 'benchmark'
array = (1..1000000).map { rand }
Benchmark.bmbm do |x|
x.report("sort!") { array.dup.sort! }
x.report("sort") { arra...