58件ヒット
[1-58件を表示]
(0.054秒)
種類
- クラス (31)
- インスタンスメソッド (27)
クラス
-
Thread
:: SizedQueue (27)
キーワード
- ConditionVariable (9)
- IO (11)
- String (11)
- deq (9)
- pop (9)
検索結果
先頭5件
-
Thread
:: SizedQueue # shift(non _ block = false) -> object (26103.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
...hread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
th1.join
# => resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (11003.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
...hread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
th1.join
# => resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (11003.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
...hread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each{|r|
q.push(r)
}
th1.join
# => resource1
# resource2
# resource3
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = SizedQueue.new... -
IO (8014.0)
-
基本的な入出力機能のためのクラスです。
...す文字列のエンコーディングは常に ASCII-8BIT になります。
以下がバイナリ読み込みメソッドです。
* IO#read(size)
* IO#read_nonblock
* IO#readpartial
* IO#sysread
また書き込みメソッド IO#write も IO のエンコーディングの影響を受け......の方法を使います。
例1:
f = File.open('file1')
p f.getc.encoding #=> Encoding::EUC_JP
例2:
f = File.open('t.txt', 'w+:shift_jis:euc-jp')
f.write "\xB4\xC1\xBB\xFA" # 文字列 "漢字" の EUC-JP リテラル
f.rewind
s = f.read(4)
puts s.dump... -
String (8014.0)
-
文字列のクラスです。 ヌル文字を含む任意のバイト列を扱うことができます。 文字列の長さにはメモリ容量以外の制限はありません。
...ーディングの変換にはメソッド String#encode を使います。
//emlist[例:エンコーディングの変換][ruby]{
p "いろは".size #=> 3
p "漢字"[0] #=> "漢"
p "山本山".reverse #=> "山本山" (回文なので分からないですね)
p "ループ".reverse......従って UTF-16 はASCII互換ではありません。
また厳密性を追求せず、おおむね互換なら互換と呼びます。よって Shift_JIS は ASCII 互換です。
==== バイト列を表す文字列
文字列ではない単なるバイト列も String オブジェクトで表... -
Thread
:: ConditionVariable (8014.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
...count
@q.size
end
def enq(v)
@mutex.synchronize{
@full.wait(@mutex) if count == @max
@q.push v
@empty.signal if count == 1
}
end
def deq
@mutex.synchronize{
@empty.wait(@mutex) if count == 0
v = @q.shift
@full....