るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
44件ヒット [1-44件を表示] (0.097秒)

別のキーワード

  1. socket send
  2. udpsocket send
  3. socket msg_send
  4. object send
  5. _builtin send

検索結果

Object#send(name, *args) -> object (54544.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。

send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う...

Object#send(name, *args) { .... } -> object (54544.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。

send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う...

BasicSocket#send(mesg, flags, dest_sockaddr = nil) -> Integer (54391.0)

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

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

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

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

@param mesg 送信するデータを文字列で指定します。

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

@...

UDPSocket#send(mesg, flags , dest_sockaddr=nil) -> Integer (54358.0)

4 引数の形式で UDPSocket#send 実行したとき、 パラメータ host の名前解決に resolv ライブラリを使います。

4 引数の形式で UDPSocket#send 実行したとき、
パラメータ host の名前解決に
resolv ライブラリを使います。

@param mesg 送るデータを文字列で与えます。
@param flags フラグを指定します。
@param host データを送る先のホストを指定します。
@param port データを送る先のポートを指定します。
@raise SocketError 名前解決に失敗した場合に発生します。

UDPSocket#send(mesg, flags) -> Integer (54349.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

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

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

絞り込み条件を変える

UDPSocket#send(mesg, flags, host, port) -> Integer (54349.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

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

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

UDPSocket#send(mesg, flags, sockaddr_to) -> Integer (54349.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

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

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

BasicObject#__send__(name, *args) -> object (18418.0)

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

@param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) -...

BasicObject#__send__(name, *args) { .... } -> object (18418.0)

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

@param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) -...

Object#public_send(name, *args) -> object (18382.0)

オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。

オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ
ドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

//emlist[][ruby]{
1.public_send(:+, 2) # => 3
//}

@param name 文字列かSymbol で指定するメソッド名です。

@param args 呼び出すメソッドに渡す引数です。

@raise ArgumentError name を指定しなかった場合に発生します。

@raise NoMethodError protected メソッドや priv...

絞り込み条件を変える

Object#public_send(name, *args) { .... } -> object (18382.0)

オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。

オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ
ドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

//emlist[][ruby]{
1.public_send(:+, 2) # => 3
//}

@param name 文字列かSymbol で指定するメソッド名です。

@param args 呼び出すメソッドに渡す引数です。

@raise ArgumentError name を指定しなかった場合に発生します。

@raise NoMethodError protected メソッドや priv...

Net::SMTP#send_mail(mailsrc, from_addr, *to_addrs) -> () (18328.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

Net::SMTP#send_message(mailsrc, from_addr, *to_addrs) -> () (18328.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

Net::SMTP#sendmail(mailsrc, from_addr, *to_addrs) -> () (18328.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

Net::HTTP#send_request(name, path, data = nil, header = nil) -> Net::HTTPResponse (18325.0)

HTTP リクエストをサーバに送り、そのレスポンスを Net::HTTPResponse のインスタンスとして返します。

HTTP リクエストをサーバに送り、そのレスポンスを
Net::HTTPResponse のインスタンスとして返します。

@param name リクエストのメソッド名を文字列で与えます。
@param path リクエストのパスを文字列で与えます。
@param data リクエストのボディを文字列で与えます。
@param header リクエストのヘッダをハッシュで与えます。

//emlist[例][ruby]{
response = http.send_request('GET', '/index.html')
puts response.body
//}

@see Net::H...

絞り込み条件を変える

UNIXSocket#send_io(io) -> nil (18325.0)

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

require 'socket'

s1, s2 = UNIXSocket.pair

s1.send_io STDOUT
stdout = s2.recv_io

p STDOUT.fileno #=> 1
p stdout.fileno #=> 6

stdout.puts "hello" # outputs "hello\n" to standard output.

@param io 送るファイルディスクリプタ(整数 or IOオブジェクト)

BasicSocket#sendmsg(mesg, flags=0, dest_sockaddr=nil, *controls) -> Integer (18322.0)

sendmsg(2) を用いてメッセージを送ります。

sendmsg(2) を用いてメッセージを送ります。

このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。

ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。

controls には 補助データ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(c...

BasicSocket#sendmsg_nonblock(mesg, flags=0, dest_sockaddr=nil, *controls) -> Integer (18304.0)

sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。

sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。

詳しくは BasicSocket#sendmsg を見てください。

@return 送ったバイト数
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg

Net::FTP#sendcmd(cmd) -> String (18304.0)

cmd で指定されたコマンドをサーバーに送り、 サーバーからの応答を返します。

cmd で指定されたコマンドをサーバーに送り、
サーバーからの応答を返します。

@param cmd コマンドを文字列で指定します。

@raise Net::FTPTempError 応答コードが 4yz のときに発生します。
@raise Net::FTPPermError 応答コードが 5yz のときに発生します。
@raise Net::FTPProtoError 応答コードが RFC 的に正しくない場合に発生します。

Net::IMAP::Envelope#sender -> [Net::IMAP::Address] | nil (18304.0)

Sender を Net::IMAP::Address オブジェクトの配列で返します。

Sender を Net::IMAP::Address オブジェクトの配列で返します。

エンベロープに存在しないときは nil を返します。

絞り込み条件を変える

Module#append_features(module_or_class) -> self (40.0)

モジュール(あるいはクラス)に self の機能を追加します。

モジュール(あるいはクラス)に self の機能を追加します。

このメソッドは Module#include の実体であり、
include を Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def include(*modules)
modules.reverse_each do |mod|
# append_features や included はプライベートメソッドなので
# 直接 mod.append_features(self) などとは書けない
mod.__send__(:append_features, s...

Module#extend_object(obj) -> object (40.0)

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend は、Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def extend(*modules)
modules.reverse_each do |mod|
# extend_object や extended はプライベートメソッドなので
# 直接 mod.extend_object(self) などとは書けない
mod.__send__(:extend_object, self)
mod.__send__...

Object#method(name) -> Method (40.0)

オブジェクトのメソッド name をオブジェクト化した Method オブジェクトを返します。

オブジェクトのメソッド name をオブジェクト化した
Method オブジェクトを返します。

@param name メソッド名をSymbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。

//emlist[][ruby]{
me = -365.method(:abs)
p me #=> #<Method: Integer#abs>
p me.call #=> 365
//}

@see Module#instance_method, Method, BasicObject#__send__, Objec...

Object#singleton_method(name) -> Method (40.0)

オブジェクトの特異メソッド name をオブジェクト化した Method オブ ジェクトを返します。

オブジェクトの特異メソッド name をオブジェクト化した Method オブ
ジェクトを返します。

@param name メソッド名をSymbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。

//emlist[][ruby]{
class Demo
def initialize(n)
@iv = n
end
def hello()
"Hello, @iv = #{@iv}"
end
end

k = Demo.new(99)
def k.hi
"Hi, @iv = ...

UDPSocket#connect(host, port) -> 0 (40.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) #=...

絞り込み条件を変える

Addrinfo#bind -> Socket (22.0)

自身のアドレスにバインドされたソケットを作成します。

自身のアドレスにバインドされたソケットを作成します。

ブロックが渡されたときにはそのブロックに生成された Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、生成された Socket
オブジェクトが返されます。

require 'socket'

Addrinfo.udp("0.0.0.0", 9981).bind {|s|
s.local_address.connect {|s| s.send "hello", 0 }
p s.recv(10) #=> "hello"
}

Addrinfo#bind {|sock| ... } -> object (22.0)

自身のアドレスにバインドされたソケットを作成します。

自身のアドレスにバインドされたソケットを作成します。

ブロックが渡されたときにはそのブロックに生成された Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、生成された Socket
オブジェクトが返されます。

require 'socket'

Addrinfo.udp("0.0.0.0", 9981).bind {|s|
s.local_address.connect {|s| s.send "hello", 0 }
p s.recv(10) #=> "hello"
}

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

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

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

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

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

@raise IOError

@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。

例:

require 'socket'

s1 = UDPSocket.new
s1.b...

Net::HTTP#request(request, data = nil) -> Net::HTTPResponse (22.0)

Net::HTTPRequest オブジェクト request をサーバに送信します。

Net::HTTPRequest オブジェクト request をサーバに送信します。

POST/PUT の時は data も与えられます
(GET/HEAD などで data を与えると
ArgumentError を発生します)。

ブロックとともに呼びだされたときは
ソケットからボディを読みこまずに Net::HTTPResponse
オブジェクトをブロックに与えます。

@param request リクエストオブジェクトを与えます。
@param data リクエストのボディを文字列で与えます。

@raise ArgumentError dataを与えるべきでないリクエス...

Net::HTTP#request(request, data = nil) {|response| .... } -> Net::HTTPResponse (22.0)

Net::HTTPRequest オブジェクト request をサーバに送信します。

Net::HTTPRequest オブジェクト request をサーバに送信します。

POST/PUT の時は data も与えられます
(GET/HEAD などで data を与えると
ArgumentError を発生します)。

ブロックとともに呼びだされたときは
ソケットからボディを読みこまずに Net::HTTPResponse
オブジェクトをブロックに与えます。

@param request リクエストオブジェクトを与えます。
@param data リクエストのボディを文字列で与えます。

@raise ArgumentError dataを与えるべきでないリクエス...

絞り込み条件を変える

Net::SMTP#data {|f| .... } -> Net::SMTP::Response (22.0)

DATA コマンドを送ります。

DATA コマンドを送ります。

文字列を引数に与えた場合はそれを本文として送ります。
ブロックを与えた場合にはそのブロックにストリームオブジェクトが渡されます
(Net::SMTP#open_message_stream参考)。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
DATA が送られるため利用する必要はないはずです。

@param message メールの本文

Net::SMTP#data(message) -> Net::SMTP::Response (22.0)

DATA コマンドを送ります。

DATA コマンドを送ります。

文字列を引数に与えた場合はそれを本文として送ります。
ブロックを与えた場合にはそのブロックにストリームオブジェクトが渡されます
(Net::SMTP#open_message_stream参考)。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
DATA が送られるため利用する必要はないはずです。

@param message メールの本文

Net::SMTP#mailfrom(from_addr) -> Net::SMTP::Response (22.0)

MAILFROM コマンドを送ります。

MAILFROM コマンドを送ります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
MAILFROM が送られるため利用する必要はないはずです。

@param from_addr 送信元メールアドレス

Net::SMTP#open_message_stream(from_addr, *to_addrs) {|f| .... } -> () (22.0)

メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。

メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。

渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ...

Net::SMTP#rcptto(to_addr) -> Net::SMTP::Response (22.0)

RCPTTO コマンドを送ります。

RCPTTO コマンドを送ります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。

@param to_addr 送信先メールアドレス

絞り込み条件を変える

Net::SMTP#rcptto_list(to_addrs) { ... } -> object (22.0)

RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。

RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。

コマンドを送った後、ブロックを呼び出します。
このメソッドの返り値はブロックの返り値になります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。

@param to_addrs 送信先メールアドレスの配列

Net::SMTP#ready(from_addr, *to_addrs) {|f| .... } -> () (22.0)

メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。

メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。

渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ...

Object#initialize_copy(obj) -> object (22.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

このメソッドは self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。

initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラスを実装する場合、情報
をインスタンス変数に保持させない場合がありますが、そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、du...

Object#public_method(name) -> Method (22.0)

オブジェクトの public メソッド name をオブジェクト化した Method オブジェクトを返します。

オブジェクトの public メソッド name をオブジェクト化した
Method オブジェクトを返します。

@param name メソッド名を Symbol または String で指定します。
@raise NameError 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。

//emlist[][ruby]{
1.public_method(:to_int) #=> #<Method: Integer#to_int>
1.public_method(:p) # method ...

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

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

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

Socket#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。

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

@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告した場合に発生します。詳しくは
Errno と man を見てください。
例:

require 's...

絞り込み条件を変える

Socket::AncillaryData#timestamp -> Time (22.0)

タイムスタンプ制御メッセージに含まれる時刻を Time オブジェクト で返します。

タイムスタンプ制御メッセージに含まれる時刻を Time オブジェクト
で返します。

"タイムスタンプ制御メッセージ" は以下のいずれかです。
* SOL_SOCKET/SCM_TIMESTAMP (micro second) GNU/Linux, FreeBSD, NetBSD, OpenBSD, Solaris, MacOS X
* SOL_SOCKET/SCM_TIMESTAMPNS (nano second) GNU/Linux
* SOL_SOCKET/SCM_BINTIME (2**(-64) second) FreeBSD

require 'socket...

UDPSocket#recvfrom_nonblock(maxlen, flags=0) -> [String, Array] (22.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...

UNIXSocket#recv_io(klass=IO, mode=nil) -> Integer|IO|object (22.0)

ソケットの接続先からファイルディスクリプタを受け取ります。

ソケットの接続先からファイルディスクリプタを受け取ります。

klass が nil の場合、ファイルディスクリプタが Integer として
返されます。

klass が nil でない場合、
klass.for_fd(fd[, mode]) が呼ばれ、その値が返されます。

例:

require 'socket'

s1, s2 = UNIXSocket.pair
s1.send_io STDOUT
io = s2.recv_io
p File.identical?(io, STDOUT) #=> true

@param klass 受け取ったファイルデ...

UNIXSocket#recvfrom(maxlen, flags = 0) -> [String [String, String]] (22.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...