別のキーワード
クラス
-
ARGF
. class (24) - BasicSocket (60)
- IO (72)
- Socket (24)
- StringIO (36)
-
Thread
:: Queue (36) -
Thread
:: SizedQueue (36) - ThreadsWait (6)
- UDPSocket (12)
モジュール
-
OpenSSL
:: Buffering (36)
キーワード
-
connect
_ nonblock (12) - deq (24)
- fcntl (12)
-
next
_ wait (6) - nonblock= (12)
- pop (24)
-
read
_ nonblock (48) - readpartial (24)
-
recv
_ nonblock (12) -
recvfrom
_ nonblock (24) - recvmsg (12)
-
recvmsg
_ nonblock (12) - sendmsg (12)
-
sendmsg
_ nonblock (12) - shift (24)
- sync= (12)
- syswrite (12)
-
write
_ nonblock (36)
検索結果
先頭5件
-
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (31.0) -
recvmsg(2) を用いてメッセージを受け取ります。
...け取ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイ......controls.each {|ancdata|
if ancdata.cmsg_is?(:SOCKET, :RIGHTS)
return ancdata.unix_rights[0]
end
}
@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプション... -
IO
# readpartial(maxlen , outbuf = "") -> String (25.0) -
IO から長さ maxlen を上限として読み込み、文字列として返します。 即座に得られるデータが存在しないときにはブロックしてデータの到着を待ちます。 即座に得られるデータが 1byte でも存在すればブロックしません。
..." "" "ghi\n"
r.readpartial(4096) #=> "ghi\n" "" ""
なお、readpartial は nonblock フラグに影響されません。
つまり、nonblock フラグが設定されていて sysread であれば Errno::EAGAIN になる場合でもブロックします。......部で発生したとしても通知されず、データが到着するまでブロックし続けます。
@param maxlen 読み込む長さの上限を整数で指定します。
@param outbuf 文字列で指定します。IO#readpartial は読み込んだデータを outbuf に破壊的に格... -
ARGF
. class # readpartial(maxlen , outbuf = nil) -> String (19.0) -
IO#readpartialを参照。ARGF.class#read などとは違って複数ファ イルを同時に読み込むことはありません。
...って複数ファ
イルを同時に読み込むことはありません。
@param maxlen 読み込む長さの上限を整数で指定します。
@param outbuf 読み込んだデータを格納する String オブジェクトを指定します。
@see IO#readpartial, ARGF.class#read_nonblock... -
IO
# fcntl(cmd , arg = 0) -> Integer (19.0) -
IOに対してシステムコール fcntl を実行します。 機能の詳細は fcntl(2) を参照してください。 fcntl(2) が返した整数を返します。
...cntl(2) を参照してください。
fcntl(2) が返した整数を返します。
@param cmd IO に対するコマンドを、添付ライブラリ fcntl が提供している定数で指定します。
@param arg cmd に対する引数を整数、文字列、booleanのいずれかで指定し......に発生します。
//emlist[例][ruby]{
require "fcntl"
IO.write("testfile", "abcde")
# ファイル状態フラグを読み出す
File.open("testfile") do |f|
f.fcntl(Fcntl::F_GETFL, 0) # => 0
f.fcntl(Fcntl::F_SETFL, Fcntl::O_NONBLOCK) # => 0
f.fcntl(Fcntl::F_GETFL, 0) # => 4
end
//}... -
OpenSSL
:: Buffering # sync=(sync) (13.0) -
出力の同期モードを設定します。
...ng#write_nonblock と
OpenSSL::SSL::SSLSocket#syswrite を除くすべての書き込み
(OpenSSL::Buffering#write, OpenSSL::Buffering#print など)
はバッファリングされずに出力されます。
false に設定すると書き込みはバッファリングされます。
@param sync 設... -
Thread
:: Queue # deq(non _ block = false) -> object (13.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
...キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.star......hile resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
th1.join
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resour... -
Thread
:: Queue # pop(non _ block = false) -> object (13.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
...キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.star......hile resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
th1.join
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resour... -
Thread
:: Queue # shift(non _ block = false) -> object (13.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
...キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.star......hile resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
th1.join
//}
//emlist[例: nonblock = true][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resour... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (13.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
...からひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Size......ce
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(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1,...