るりまサーチ

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

別のキーワード

  1. socket recvfrom
  2. socket recvfrom_nonblock
  3. ipsocket recvfrom
  4. unixsocket recvfrom
  5. udpsocket recvfrom_nonblock

ライブラリ

キーワード

検索結果

UDPSocket#recvfrom_nonblock(maxlen, flags=0) -> [String, Array] (6148.0)

ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。

...モードに設定した後、
recvfrom
(2) でソケットからデータを受け取ります。

maxlen で受け取るデータの最大バイト数を指定します。

flags はフラグで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください...
...

返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。

recvfrom
(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Errno::EAGAIN のような待ってからリ...
...

require 'socket'
s1 = UDPSocket.new
s1.bind("127.0.0.1", 0)
s2 = UDPSocket.new
s2.bind("127.0.0.1", 0)
s2.connect(*s1.addr.values_at(3,1))
s1.connect(*s2.addr.values_at(3,1))
s1.send "aaa", 0
begin # emulate blocking recvfrom
p s2.recvfrom_nonblock(10)
#=> ["aaa", ["...

UDPSocket#connect(host, port) -> 0 (7.0)

ソケットを 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) #=> ["uuuu", ["AF_INET", 33230, "localhost", "127.0.0.1"]]

@param host 接続するホスト名文字列
@param port 接続するポート番号...