るりまサーチ

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

別のキーワード

  1. io popen
  2. io pipe
  3. io readlines
  4. io each
  5. io each_line

ライブラリ

クラス

キーワード

検索結果

UNIXSocket#send_io(io) -> nil (24350.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 stan...
...dard output.

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

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

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

...or_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 受け取ったファイルディスクリプタを変換するためのクラス
@pa...

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

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

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

ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo...
...ます。

# UnixSocket#send_io の実装例
# use Socket::AncillaryData.
require 'socket'

ancdata = Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, io.fileno)
sock.sendmsg("a", 0, nil, ancdata)

# use 3-element array.
ancdata = [:SOCKET, :RIGHTS, [io.fileno].pack("i!")]
sock.s...