るりまサーチ (Ruby 2.6.0)

最速Rubyリファレンスマニュアル検索!
7件ヒット [1-7件を表示] (0.026秒)
トップページ > バージョン:2.6.0[x] > クエリ:raise[x] > クラス:Socket[x]

別のキーワード

  1. _builtin raise
  2. kernel raise
  3. fiber raise
  4. thread raise
  5. e2mmap raise

検索結果

Socket#connect(server_sockaddr) -> 0 (22.0)

connect(2) でソケットを接続します。

...connect(2) でソケットを接続します。

server_sockaddr は、
lib:socket#pack_string
もしくは Addrinfo オブジェクト
です。

0 を返します。

@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告した場合に発生します。...
...、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 / HTTP/1.0\r\n\r\n"
print s.rea...

Socket#connect_nonblock(server_sockaddr) -> 0 (22.0)

ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。

...ソケットをノンブロッキングモードに設定した後、
connect(2) を呼び出します。

引数、返り値は Socket#connect と同じです。

connect が EINPROGRESS エラーを報告した場合、その例外(Errno::EINPROGRESS)
には IO::WaitWritable が Object#extend さ...
...eb page
require 'socket'
include Socket::Constants
socket
= Socket.new(AF_INET, SOCK_STREAM, 0)
sockaddr = Socket.sockaddr_in(80, 'www.google.com')
begin # emulate blocking connect
socket
.connect_nonblock(sockaddr)
rescue IO::WaitWritable
IO.select(nil, [socket]) # wait 3-way han...
...dshake completion
begin
socket
.connect_nonblock(sockaddr) # check connection failure
rescue Errno::EISCONN
end
end
socket
.write("GET / HTTP/1.0\r\n\r\n")
results = socket.read



@param server_sockaddr 接続先アドレス
@raise Errno::EXXX connect(2) がエラーを報告...

Socket#recvfrom(maxlen, flags=0) -> [String, Addrinfo] (22.0)

ソケットからデータを受け取ります。

...ソケットからデータを受け取ります。

Socket
#recv と同様ですが、返り値として
データ文字列と相手ソケットのアドレスのペアが返されます。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しくは recvfrom(2) を参...
...。詳しくは
Errno と man を見てください。
例:

require 'socket'

s1 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s2 = Socket.new(Socket::AF_INET, Socket::SOCK_DGRAM, 0)
s1.bind(Socket.sockaddr_in(0, "0.0.0.0"))
s2.send("foo", 0, s1.getsockname)
mesg, sockaddr...
...= s1.recvfrom(10)
p mesg #=> "foo"
p sockaddr #=> "\002\000\200r\177\000\000\001\000\000\000\000\000\000\000\000"
p Socket.unpack_sockaddr_in(sockaddr) #=> [32882, "127.0.0.1"]...

Socket#recvfrom_nonblock(maxlen, flags=0) -> [String, Addrinfo] (22.0)

ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。

...ソケットをノンブロッキングモードに設定した後、
recvfrom(2) を呼び出します。

引数、返り値は Socket#recvfrom と同じです。

recvfrom(2) がエラーになった場合、
EAGAIN, EINTR を含め例外 Errno::EXXX が発生します。
Errno::EWOULDBLOCK、Er...

Socket.getaddrinfo(nodename, servname, family=nil, socktype=nil, protocol=nil, flags=nil) -> Array (22.0)

2553で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。

...名を指定します。 必須引数です。 (lib:socket#host_formatを参照)

@param servname サービス名を指定します。 必須引数です。 (lib:socket#service_formatを参照)

@param family アドレスファミリー。Socket::Constants::AF_INET など、AF_ で始まる定数を...
...指定します。

@param socktype ソケットタイプ。 Socket::Constants::SOCK_STREAM など、 SOCK_ で始まる定数を指定します。

@param protocol プロトコル。Socket::Constants::IPPROTO_IP など、IPPROTO_ で始まる定数を指定します。

@param flags getaddrinfo(3)...
...数に指定する addrinfo 構造体の ai_flags メンバに相当する整数。 Socket::AI_PASSIVEなど。

@return 7つの要素からなるアドレス情報に関する配列を返します。
@raise SocketError getaddrinfo(3)がエラーを返したときに発生する例外です

@see Ad...

絞り込み条件を変える

Socket.gethostbyaddr(host, type = Socket::AF_INET) -> Array (22.0)

sockaddr 構造体をパックした文字列からホスト情報を返します。 ホスト情報の構造は Socket.gethostbyname と同じです。 type には、アドレスタイプ(デフォルトは Socket::AF_INET)を指定します。

... Socket.gethostbyname と同じです。
type には、アドレスタイプ(デフォルトは
Socket
::AF_INET)を指定します。

@param host ホストを文字列で指定します。

@param type アドレスタイプ(デフォルトはSocket::AF_INET)を指定します。

@raise SocketEr...

Socket.getnameinfo(sa, flags = 0) -> Array (22.0)

2553 で定義された getnameinfo() の機能を提供するク ラスメソッド。 gethostbyaddr() や getservbyport() の代 わりとして用意されています。IPのバージョンに依存しないプログラムを 書くための標準的なAPIです。

...ise SocketError getnameinfo(3) がエラーを起こした場合に生じる例外

@see Addrinfo#getnameinfo

=== 引数 sa について
引数 sa には文字列か配列を与えます。文字列の場合は sockaddr 構造体
のパック文字列を与えます。具体的には BasicSocket#ge...
...素が4つの場合:
[アドレスファミリー, サービス, 任意, アドレスを表す文字列]

アドレスファミリーには Socket::AF_INET 等の定数の他に文字列
で "AF_INET" もしくは "AF_INET6" もしくは nil が
指定できます。ただしIPv6が使えな...
...なります。アドレスファミリーに
nil を指定することは Socket::AF_UNSPEC を指定すること
と等価です。

サービス、ホストの指定に関しては lib:socket#service_format、
lib:socket#host_formatを参照してください。

要素が3つの場合でも、...