Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > socketライブラリ > BasicSocketクラス > send

instance method BasicSocket#send

send(mesg, flags, dest_sockaddr = nil) -> Integer[permalink][rdoc]

ソケットを介してデータを送ります。flags に関しては send(2) を参照してください。connect していないソケットに対しては送り先である dest_sockaddr を指定する必要があります。実際に送ったデータの長さを返します。

dest_sockaddr には「ソケットアドレス構造体を pack した文字列」を指定します。

データの送信に失敗した場合は例外 Errno::EXXX が発生します。

[PARAM] mesg:
送信するデータを文字列で指定します。
[PARAM] flags:
send(2) の flags を参照してください。
[PARAM] dest_sockaddr:
「ソケットアドレス構造体を pack した文字列」を指定します。
[EXCEPTION] Errno::EXXX:
データの送信に失敗した場合に発生します。

例:

require 'socket'

s = UDPSocket.new
sockaddr = Socket.sockaddr_in("discard", "localhost")
s.send("The king has donkey ears!", 0, sockaddr)