72件ヒット
[1-72件を表示]
(0.107秒)
クラス
- BasicSocket (36)
- Socket (24)
- UDPSocket (12)
キーワード
- connect (12)
-
recv
_ nonblock (12) -
recvfrom
_ nonblock (24) - recvmsg (12)
-
recvmsg
_ nonblock (12)
検索結果
先頭5件
- Socket
# connect(server _ sockaddr) -> 0 - BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] - BasicSocket
# recv _ nonblock(maxlen , flags = 0) -> String - Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] - UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array]
-
Socket
# connect(server _ sockaddr) -> 0 (12221.0) -
connect(2) でソケットを接続します。
...connect(2) でソケットを接続します。
server_sockaddr は、
lib:socket#pack_string
もしくは Addrinfo オブジェクト
です。
0 を返します。
@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に発生します。...... TCP ソケットを生成し、connect で www.ruby-lang.org:80 に接続するには以下のようにします。
例:
require 'socket'
s = Socket.new(Socket::AF_INET, Socket::SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(80, "www.ruby-lang.org")
s.connect(sockaddr)
s.write "GET / HT......TP/1.0\r\n\r\n"
print s.read... -
BasicSocket
# recvmsg _ nonblock(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (9629.0) -
recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。
...ングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。
@param maxmesglen 受け取るメッセージの最大長
@param flags フラグ
@param maxcontrollen 受け取る補助データの最大長
@param opts ハッシュオプション... -
BasicSocket
# recv _ nonblock(maxlen , flags = 0) -> String (9417.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
...ます。
引数、返り値は BasicSocket#recv と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
@param maxlen 受け取る文字列の最大の長さを指定します。
@param flags recv(2) を参照してくだ... -
Socket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Addrinfo] (9417.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。
... Socket#recvfrom と同じです。
recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Errno::EAGAIN のような待ってからリトライすることが
可能であることを意味する例外には、IO::WaitRead......able が extend
されています。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告した場合に発生します。詳しくは
man を参照してください... -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (9417.0) -
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。
...グで、Socket::MSG_* の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
返り値はデータの文字列と送り元のアドレス情報の
2要素の配列となります。
recvfrom(2) がエラーになった場合、
Errno::EAGAIN, Errno::EINTR を含......には、IO::WaitReadable が extend
されています。
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 recvf......rom
p s2.recvfrom_nonblock(10)
#=> ["aaa", ["AF_INET", 33302, "localhost.localdomain", "127.0.0.1"]]
rescue IO::WaitReadable
IO.select([s2])
retry
end
@param maxlen 受け取るデータの最大バイト数
@param flags フラグ
@see IPSocket#recvfrom... -
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (3529.0) -
recvmsg(2) を用いてメッセージを受け取ります。
...します。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合は必......では Socket::MSG_* という名前の定数の biwsise OR を取った
ものを渡します。
opts にはその他のオプションを渡します。今のところ :scm_right => bool
というオプションのみ利用できます。このオプションに
真を渡すと、 SCM_RIGHTS 制......します。詳しくは Socket::AncillaryData#unix_rights
を参照してください。
返り値は配列で得られます。
返り値の配列の最初の要素は受け取ったメッセージを表す文字列です。
2番目の要素は connection-less socket の場合には送り元の...