るりまサーチ

最速Rubyリファレンスマニュアル検索!
22件ヒット [1-22件を表示] (0.148秒)
トップページ > クエリ:i[x] > クエリ:A[x] > クエリ:getsockname[x] > クエリ:recvfrom[x]

別のキーワード

  1. _builtin to_a
  2. matrix to_a
  3. to_a
  4. rexml/document to_a
  5. dbm to_a

ライブラリ

クラス

検索結果

IPSocket#recvfrom(maxlen, flags = 0) -> Array (21219.0)

recv と同様にソケットからデータを受け取りますが、 戻り値は文字列と相手ソケットのアドレス (形式は IPSocket#addr 参照) のペアです。引数につ いては BasicSocket#recv と同様です。

...ス (形式は
I
PSocket#addr 参照) のペアです。引数につ
いては BasicSocket#recv と同様です。

@param maxlen 受け取る文字列の最大の長さを指定します。

@param flags recv(2) を参照してください。

@raise IOError

@raise Errno::EXXX recvfrom(2) がエラ...
...uire 'socket'

s1 = UDPSocket.new
s1.bind("0.0.0.0", 0) # 適当に空いている port を割り当てる
s2 = UDPSocket.new
s2.send("foo", 0, s1.getsockname)
mesg, inet_addr = s1.recvfrom(100)
p mesg #=> "foo"
p inet_addr #=> ["AF_INET", 32876, "localhost.localdomain...

Socket#recvfrom(maxlen, flags=0) -> [String, Addrinfo] (18425.0)

ソケットからデータを受け取ります。

...が返されます。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。

@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告し...
...rrno と man を見てください。
例:

require 'socket'

s1 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s2 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s1.bind(Socket.sockaddr_in(0, "0.0.0.0"))
s2.send("foo", 0, s1.getsockname)
mesg, sockaddr = s1.recvfrom(10)
p m...
...esg #=> "foo"
p sockaddr #=> "\002\000\200r\177\000\000\001\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(sockaddr) #=> [32882, "127.0.0.1"]...