3件ヒット
[1-3件を表示]
(0.126秒)
検索結果
先頭3件
-
UNIXSocket
# recvfrom(maxlen , flags = 0) -> [String [String , String]] (63373.0) -
recvfrom(2) を用いてソケットからメッセージを受け取ります。
recvfrom(2) を用いてソケットからメッセージを受け取ります。
maxlen で受け取るメッセージの最大長をバイト数で指定します。
flags には Socket::MSG_* という名前の定数の bitwise OR を渡します。
戻り値は文字列と相手ソケットのパスのペアです。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.send "a", 0
p c.recvfrom(10... -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (27445.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
ソケットをノンブロッキングモードに設定した後、
recvfrom(2) でソケットからデータを受け取ります。
maxlen で受け取るデータの最大バイト数を指定します。
flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。
recvfrom(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Err... -
UDPSocket
# connect(host , port) -> 0 (9130.0) -
ソケットを host の port に connect(2) します。
ソケットを host の port に connect(2) します。
これによって UDPSocket#send で送り先のアドレスを指定せずに
データを送ることができます(connect しなくとも送り先のアドレスを明示すれば
データを送ることができます)。
require 'socket'
u1 = UDPSocket.new
u1.bind("127.0.0.1", 4913)
u2 = UDPSocket.new
u2.connect("127.0.0.1", 4913)
u2.send "uuuu", 0
p u1.recvfrom(10) #=...