るりまサーチ

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

別のキーワード

  1. unixsocket new
  2. unixsocket open
  3. socket unixsocket
  4. unixsocket recv_io
  5. unixsocket addr

ライブラリ

クラス

キーワード

検索結果

BasicSocket#recv(maxlen, flags = 0) -> String (18154.0)

ソケットからデータを受け取り、文字列として返します。 maxlen は受け取る最大の長さを指定します。 flags については recv(2) を参照してください。flags の デフォルト値は 0 です。flags の指定に必要な定数は Socket クラスで定義されています。(例: Socket::MSG_PEEK)

...指定します。
flags については recv(2) を参照してください。flags の
デフォルト値は 0 です。flags の指定に必要な定数は
Socket クラスで定義されています。(例: Socket::MSG_PEEK)

内部で呼び出す recv(2) が 0 を返した場合、このメソ...
...aram flags recv(2) を参照してください。

@raise IOError

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

例:

require 'socket'

s1, s2 = UNIXSocket.pair
s1.write "a"
s1.close
p s2.recv(10, Socket::MSG_PEEK) #=> "a"
p s2.recv(10)...
...#=> "a"
p s2.recv(10) #=> ""...

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

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

...ない場合、
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]] (15107.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)[0] #=> "a"
}

@param maxlen 受け取るメッセージの最大長
@param flags フラグ...

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

引数 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.

@p...

BasicSocket#recvmsg(maxmesglen=nil, flags=0, maxcontrollen=nil, opts={}) -> [String, Addrinfo, Integer, *Socket::AncillaryData] (6113.0)

recvmsg(2) を用いてメッセージを受け取ります。

...
recv
msg(2) を用いてメッセージを受け取ります。

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

maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(...
...は補助データ(Socket::AncillaryData オブジェクト)です。

require 'socket'

# UnixSocket#recv_io を recvmsg で実装する例
mesg, sender_sockaddr, rflags, *controls = sock.recvmsg(:scm_rights=>true)
controls.each {|ancdata|
if ancdata.cmsg_is?(:SOCKET, :RIGHTS)
r...

絞り込み条件を変える

UNIXServer#accept -> UnixSocket (136.0)

クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。

...、接続した
UNIXSocket
のインスタンスを返します。

例:

require 'socket'

UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"
p c.recv(20) #=> "from server"
p s.recv(20) #=> "f...