るりまサーチ

最速Rubyリファレンスマニュアル検索!
4145件ヒット [1-100件を表示] (0.131秒)
トップページ > クエリ:i[x] > クエリ:BasicSocket[x]

別のキーワード

  1. _builtin to_i
  2. fiddle to_i
  3. matrix elements_to_i
  4. csv to_i
  5. ipaddr to_i

ライブラリ

クラス

モジュール

キーワード

検索結果

<< 1 2 3 ... > >>

BasicSocket (44000.0)

ソケットを表す抽象クラスです。具体的なソケット操作はサブクラスで 定義されます。

ソケットを表す抽象クラスです。具体的なソケット操作はサブクラスで
定義されます。

例えばインターネットドメインストリームソケットの場合は
TCPSocket を用います。

BasicSocket#getpeereid -> [Integer, Integer] (27100.0)

Unix ドメインソケットにおいて接続相手の euid と egid を 返します。

...Unix ドメインソケットにおいて接続相手の euid と egid を
返します。

配列の最初の要素が euid, 2番目の要素が egid です。

ソケットが Unix ドメインソケットでない場合の返り値は
不定です。

require 'socket'

Socket.unix_server_loop...
...("/tmp/sock") {|s|
begin
euid, egid = s.getpeereid

# Check the connected client is myself or not.
next if euid != Process.uid

# do something about my resource.
ensure
s.close
end
}...

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

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

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

maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合...
...という名前の定数の biwsise OR を取った
ものを渡します。

opts にはその他のオプションを渡します。今のところ :scm_right => bool
というオプションのみ利用できます。このオプションに
真を渡すと、 SCM_RIGHTS 制御メッセージを...
...れる
I
O オブジェクトを生成します。詳しくは Socket::AncillaryData#unix_rights
を参照してください。

返り値は配列で得られます。

返り値の配列の最初の要素は受け取ったメッセージを表す文字列です。

2番目の要素は connection-le...

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

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

...recvmsg(2) を用いてノンブロッキング方式でメッセージを受け取ります。

ブロッキングの有無以外は BasicSocket#recvmsg と同じです。
詳しくはそちらを参照してください。

@param maxmesglen 受け取るメッセージの最大長
@param flags...

BasicSocket.for_fd(fd) -> BasicSocket (24213.0)

ファイルディスクリプタ fd に対する新しいソケットを生成します。

...します。

返り値のクラスはどのクラスの for_fd を呼びだしたかによって決まります。
require 'socket'

BasicSocket
.for_fd(fd) # BasicSocket のインスタンスを返す
TCPSocket.for_fd(fd) # TCPSocket のインスタンスを返す

@param fd ファイル...

絞り込み条件を変える

BasicSocket#connect_address -> Addrinfo (24118.0)

ローカルマシン内で接続するのに適当なアドレスを Addrinfo オブジェクトで返します。

...drinfo
オブジェクトで返します。

BasicSocket
#local_address の返り値
以下の点を除いては同じものを返します。
* IPv4 の不定アドレス(0.0.0.0) は IPv4 のループバックアドレス(127.0.0.1)
に置換される
* IPv6 の不定アドレス(::) は IP...
...レス(::1)
に置換される

BasicSocket
#local_address が接続先として不適なアドレスを返す場合は
例外 SocketError が発生します。

require 'socket'

Addrinfo.tcp("0.0.0.0", 0).listen {|serv|
p serv.connect_address #=> #<Addrinfo: 127.0.0.1:53660 TCP>
ser...
...v.connect_address.connect {|c|
s, _ = serv.accept
p [c, s] #=> [#<Socket:fd 4>, #<Socket:fd 6>]
}
}


@raise SocketError アドレスが接続に不適な場合に返します
@see BasicSocket#local_address...

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

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

...ング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。

ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として...
...タ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(cmsg_level, cmsg_type, cmsg_data) の配列を用いることができます。

送ったバイト数を返します。

# 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.sendmsg("\0", 0, nil, ancdata)


@param mesg メッセージ文字列
@param flags フラグ(Sock...

BasicSocket#getsockopt(level, optname) -> Socket::Option (24112.0)

ソケットのオプションを取得します。getsockopt(2) を参照してください。 取得したオプションのデータを Socket::Option で返します。

...てください。
取得したオプションのデータを Socket::Option で返します。

level, optname には Socket::SOL_SOCKET や Socket::SO_REUSEADDR
といった整数値の他、文字列("SOL_SOCKET", prefixなしの "SOCKET")や
シンボル(:SO_REUSEADDR, :REUSEADDR)を用いる...
...l
@param optname getsockopt(2) の 第三引数のoption_name
@see BasicSocket#setsockopt

例:

require 'socket'

serv = Socket.tcp_server_sockets("", 0)[0]
c = serv.local_address.connect
s = serv.accept
opt = c.getsockopt(Socket::IPPROTO_TCP, Socket::TCP_NODELAY)
# c.getsockopt("TCP...
...
p opt #=> #<Socket::Option: INET TCP NODELAY 0>
p opt.bool #=> false (Nagle アルゴリズム有効)
p opt.unpack("i")[0] #=> 0 (Socket::Option#unpack が互換性のために存在する)
# 整数値の場合は Socket::Option#int を用いる
p c.getsockopt(:IP, :TTL).int #=> 64...

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

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

... BasicSocket#sendmsg を見てください。

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

BasicSocket#local_address -> Addrinfo (24106.0)

getsockname(2) で得られたローカルアドレス情報を Addrinfo オブジェクトとして返します。

...ドレス情報を
Addrinfo オブジェクトとして返します。

返されたオブジェクトの Addrinfo#protocol は 0 を
返すことに注意してください。

require 'socket'

TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.local_address #=> #<Addrinfo: 192.168.0.129:368...
...73 TCP>
}

TCPServer.open("127.0.0.1", 1512) {|serv|
p serv.local_address #=> #<Addrinfo: 127.0.0.1:1512 TCP>
}

@see BasicSocket#getsockname...

絞り込み条件を変える

<< 1 2 3 ... > >>