種類
- 定数 (40)
- インスタンスメソッド (17)
- 特異メソッド (6)
- 文書 (2)
ライブラリ
- resolv-replace (1)
- socket (62)
クラス
- Addrinfo (2)
- BasicSocket (3)
- IPSocket (1)
- Socket (21)
-
Socket
:: AncillaryData (1) - UDPSocket (6)
- UNIXSocket (9)
モジュール
-
Socket
:: Constants (20)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) -
IP
_ PMTUDISC _ DO (2) -
IP
_ PMTUDISC _ DONT (2) -
IP
_ SENDSRCADDR (2) -
MSG
_ CONFIRM (2) -
MSG
_ CTRUNC (2) -
MSG
_ DONTROUTE (2) -
MSG
_ DONTWAIT (2) -
MSG
_ EOF (2) -
MSG
_ EOR (2) -
MSG
_ MORE (2) -
MSG
_ NOSIGNAL (2) -
MSG
_ OOB (2) -
MSG
_ PEEK (2) -
MSG
_ SEND (2) -
MSG
_ TRUNC (2) -
SO
_ DONTROUTE (2) -
SO
_ SNDBUF (2) -
SO
_ SNDTIMEO (2) -
TCP
_ CORK (2) -
UDP
_ CORK (2) - bind (2)
- connect (1)
- new (2)
- open (2)
- pair (1)
-
recv
_ io (1) - recvfrom (3)
-
recvfrom
_ nonblock (1) -
ruby 1
. 9 feature (1) -
send
_ io (1) - sendmsg (1)
-
sendmsg
_ nonblock (1) - socketpair (1)
検索結果
先頭5件
-
Socket
:: MSG _ SEND -> Integer (81352.0) -
@todo Send the packet in so_temp
@todo
Send the packet in so_temp -
Socket
:: IP _ SENDSRCADDR -> Integer (81319.0) -
ource address for outgoing UDP datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
ource address for outgoing UDP datagrams。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(4freebsd) -
BasicSocket
# send(mesg , flags , dest _ sockaddr = nil) -> Integer (63424.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) -> Integer (63418.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 (63418.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 (63418.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 , dest _ sockaddr=nil) -> Integer (63355.0) -
4 引数の形式で UDPSocket#send 実行したとき、 パラメータ host の名前解決に resolv ライブラリを使います。
4 引数の形式で UDPSocket#send 実行したとき、
パラメータ host の名前解決に
resolv ライブラリを使います。
@param mesg 送るデータを文字列で与えます。
@param flags フラグを指定します。
@param host データを送る先のホストを指定します。
@param port データを送る先のポートを指定します。
@raise SocketError 名前解決に失敗した場合に発生します。 -
Socket
# recvfrom(maxlen , flags=0) -> [String , Addrinfo] (63217.0) -
ソケットからデータを受け取ります。
ソケットからデータを受け取ります。
Socket#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。
flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参照してください。
@param maxlen ソケットから受けとるデータの最大値
@param flags フラグ
@raise Errno::EXXX recvfrom(2) がエラーを報告した場合に発生します。詳しくは
Errno と man を見てください。
例:
require 's... -
Socket
:: MSG _ DONTROUTE -> Integer (63121.0) -
Send without using the routing tables。
Send without using the routing tables。
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux)
send(2freebsd) -
Socket
:: SO _ DONTROUTE -> Integer (63121.0) -
Send without using the routing tables。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send without using the routing tables。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: SO _ SNDBUF -> Integer (63121.0) -
Send buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send buffer size。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: SO _ SNDTIMEO -> Integer (63121.0) -
Send timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send timeout。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: MSG _ EOR -> Integer (63091.0) -
Data completes record。
Data completes record。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: MSG _ OOB -> Integer (63091.0) -
Process out-of-band data。
Process out-of-band data。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: MSG _ PEEK -> Integer (63091.0) -
Peek at incoming message。
Peek at incoming message。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: MSG _ MORE -> Integer (63085.0) -
Sender will send more
Sender will send more
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see send(2linux) -
Socket
:: MSG _ CTRUNC -> Integer (63073.0) -
Control data lost before delivery。
Control data lost before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: MSG _ TRUNC -> Integer (63073.0) -
Data discarded before delivery。
Data discarded before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: IP _ PMTUDISC _ DO -> Integer (63067.0) -
Always send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Always send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(7linux) -
Socket
:: IP _ PMTUDISC _ DONT -> Integer (63067.0) -
Never send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Never send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(7linux) -
Socket
:: MSG _ NOSIGNAL -> Integer (63055.0) -
Do not generate SIGPIPE
Do not generate SIGPIPE
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see send(2linux), send(2freebsd) -
Socket
:: TCP _ CORK -> Integer (63049.0) -
Don't send partial frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Don't send partial frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(7linux) -
Socket
:: UDP _ CORK -> Integer (63049.0) -
Don't send partial frames BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Don't send partial frames
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see udp(7linux) -
Socket
:: MSG _ CONFIRM -> Integer (63037.0) -
Confirm path validity
Confirm path validity
BasicSocket#send, BasicSocket#sendmsg
の flags 引数に用います。
@see send(2linux) -
Socket
:: MSG _ DONTWAIT -> Integer (63037.0) -
This message should be non-blocking。
This message should be non-blocking。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2linux), recv(2linux),
recv(2freebsd) -
Socket
:: MSG _ EOF -> Integer (63037.0) -
Data completes connection。
Data completes connection。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2freebsd) -
BasicSocket
# sendmsg(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (27463.0) -
sendmsg(2) を用いてメッセージを送ります。
sendmsg(2) を用いてメッセージを送ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。
ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。
controls には 補助データ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(c... -
Socket
:: Constants :: MSG _ SEND -> Integer (27352.0) -
@todo Send the packet in so_temp
@todo
Send the packet in so_temp -
UNIXSocket
# send _ io(io) -> nil (27340.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 _ nonblock(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (27319.0) -
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。
詳しくは BasicSocket#sendmsg を見てください。
@return 送ったバイト数
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg -
Socket
:: Constants :: IP _ SENDSRCADDR -> Integer (27319.0) -
ource address for outgoing UDP datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
ource address for outgoing UDP datagrams。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(4freebsd) -
UNIXSocket
. socketpair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (19315.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", ... -
UNIXSocket
. pair(type=Socket :: SOCK _ STREAM , protocol=0) -> [UNIXSocket , UNIXSocket] (10015.0) -
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。
type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。
protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。
require 'socket'
s1, s2 = UNIXSocket.pair
s1.send "a", ... -
UNIXSocket
. new(path) -> UNIXSocket (9337.0) -
path で指定したパス名を用いてソケットを接続します。
path で指定したパス名を用いてソケットを接続します。
ブロックを省略すると接続したソケットを返します。
ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。
@param path 接続先のパス名文字列
require 'socket'
s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0) -
UNIXSocket
. open(path) -> UNIXSocket (9337.0) -
path で指定したパス名を用いてソケットを接続します。
path で指定したパス名を用いてソケットを接続します。
ブロックを省略すると接続したソケットを返します。
ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。
@param path 接続先のパス名文字列
require 'socket'
s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0) -
Socket
:: AncillaryData # timestamp -> Time (9253.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... -
Socket
:: Constants :: MSG _ DONTROUTE -> Integer (9121.0) -
Send without using the routing tables。
Send without using the routing tables。
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux)
send(2freebsd) -
Socket
:: Constants :: SO _ DONTROUTE -> Integer (9121.0) -
Send without using the routing tables。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send without using the routing tables。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: Constants :: SO _ SNDBUF -> Integer (9121.0) -
Send buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send buffer size。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: Constants :: SO _ SNDTIMEO -> Integer (9121.0) -
Send timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Send timeout。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET -
Socket
:: Constants :: MSG _ EOR -> Integer (9091.0) -
Data completes record。
Data completes record。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: Constants :: MSG _ OOB -> Integer (9091.0) -
Process out-of-band data。
Process out-of-band data。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: Constants :: MSG _ PEEK -> Integer (9091.0) -
Peek at incoming message。
Peek at incoming message。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: Constants :: MSG _ MORE -> Integer (9085.0) -
Sender will send more
Sender will send more
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see send(2linux) -
Socket
:: Constants :: MSG _ CTRUNC -> Integer (9073.0) -
Control data lost before delivery。
Control data lost before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: Constants :: MSG _ TRUNC -> Integer (9073.0) -
Data discarded before delivery。
Data discarded before delivery。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。
@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd) -
Socket
:: Constants :: IP _ PMTUDISC _ DO -> Integer (9067.0) -
Always send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Always send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(7linux) -
Socket
:: Constants :: IP _ PMTUDISC _ DONT -> Integer (9067.0) -
Never send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Never send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see Socket::Constants::IPPROTO_IP, ip(7linux) -
Socket
:: Constants :: MSG _ NOSIGNAL -> Integer (9055.0) -
Do not generate SIGPIPE
Do not generate SIGPIPE
BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。
@see send(2linux), send(2freebsd) -
UDPSocket
# connect(host , port) -> 0 (9055.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) #=... -
UDPSocket
# recvfrom _ nonblock(maxlen , flags=0) -> [String , Array] (9055.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
# recvfrom(maxlen , flags = 0) -> [String [String , String]] (9055.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... -
Socket
:: Constants :: TCP _ CORK -> Integer (9049.0) -
Don't send partial frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Don't send partial frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(7linux) -
Socket
:: Constants :: UDP _ CORK -> Integer (9049.0) -
Don't send partial frames BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
Don't send partial frames
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see udp(7linux) -
IPSocket
# recvfrom(maxlen , flags = 0) -> Array (9037.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... -
Socket
:: Constants :: MSG _ CONFIRM -> Integer (9037.0) -
Confirm path validity
Confirm path validity
BasicSocket#send, BasicSocket#sendmsg
の flags 引数に用います。
@see send(2linux) -
Socket
:: Constants :: MSG _ DONTWAIT -> Integer (9037.0) -
This message should be non-blocking。
This message should be non-blocking。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2linux), recv(2linux),
recv(2freebsd) -
Socket
:: Constants :: MSG _ EOF -> Integer (9037.0) -
Data completes connection。
Data completes connection。
BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。
@see send(2freebsd) -
UNIXSocket
# recv _ io(klass=IO , mode=nil) -> Integer|IO|object (9037.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
. new(path) {|sock| . . . } -> object (9037.0) -
path で指定したパス名を用いてソケットを接続します。
path で指定したパス名を用いてソケットを接続します。
ブロックを省略すると接続したソケットを返します。
ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。
@param path 接続先のパス名文字列
require 'socket'
s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0) -
UNIXSocket
. open(path) {|sock| . . . } -> object (9037.0) -
path で指定したパス名を用いてソケットを接続します。
path で指定したパス名を用いてソケットを接続します。
ブロックを省略すると接続したソケットを返します。
ブロックを渡した場合は、接続したソケットを引数としてそのブロックを呼びだし、
ブロック終了時にソケットを閉じます。この場合には
ブロックの評価値を返り値として返します。
@param path 接続先のパス名文字列
require 'socket'
s = UNIXSocket.new("/tmp/sock")
s.send("hello", 0) -
Addrinfo
# bind -> Socket (376.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"
} -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (325.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
ruby 1
. 9 feature (91.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ... -
Addrinfo
# bind {|sock| . . . } -> object (76.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"
}