Ruby 1.8.7 リファレンスマニュアル > ライブラリ一覧 > socketライブラリ > Socketクラス
クラスの継承リスト: Socket < BasicSocket < IO < Enumerable < File::Constants < Object < Kernel
ソケットそのものに対するシステムコールレベルのアクセスを提供 するクラス。Perl のソケットに対するアクセスと同レベルの機能を 提供しています。このクラスではソケットアドレスは Array#pack された文字列で指定します (socket/ソケットアドレス構造体を pack した文字列を参照)。
一般的なソケットプログラミングはより高レベルの TCPSocket クラスや TCPServer クラスを用い て行われることが多く、このクラスはあまり用いられません。
定義 | 説明 | |
---|---|---|
getaddrinfo(nodename, servname, family=nil, socktype=nil, protocol=nil, flags=nil) -> Array
|
[RFC2553]で定義された getaddrinfo() の機能を提供するクラスメソッド。この関数は gethostbyname() や getservbyname() の代わりとして用意されており、 IP のバージョンに依存しないプログラムを書くための標準的な API です。 |
|
gethostbyaddr(host, type = Socket::AF_INET) -> Array
|
sockaddr 構造体をパックした文字列からホスト情報を返します。 ホスト情報の構造は Socket.gethostbyname と同じです。 type には、アドレスタイプ(デフォルトは Socket::AF_INET)を指定します。 |
|
gethostbyname(host) -> Array
|
ホスト名または IP アドレス(指定方法に関しては socket/ホスト指定形式を参照) からホストの情報を返します。 |
|
gethostname -> String
|
システムの標準のホスト名を取得します。 |
|
getnameinfo(sa, flags = 0) -> Array
|
[RFC2553] で定義された getnameinfo() の機能を提供するク ラスメソッド。 gethostbyaddr() や getservbyport() の代 わりとして用意されています。IPのバージョンに依存しないプログラムを 書くための標準的なAPIです。 |
|
getservbyname(service, proto = "tcp") -> Fixnum
|
service, protoに対応するポート番号を返 します。protoの省略値は"tcp"です。 |
|
open(domain, type, protocol) -> Socket
|
新しいソケットを生成します。domain、type、 protocol はインクルードファイルにある定数で指定しま す。ほとんどの定数は Socket::AF_INET のように Socket クラスの定数として定義されています。domain とtype に関しては、"AF_INET", "SOCK_STREAM" のように文字列でも指定できますが、文 字列ですべての機能を指定できる保証はありません。 |
|
sockaddr_in(port, host) -> String
|
指定したアドレスをsocket/ソケットアドレス構造体を pack した文字列 で返します。port は、ポート番号を表す Fixnum あるいは、ポート 番号、サービス名を表す文字列です。 |
|
sockaddr_un(path) -> String
|
指定したアドレスをsocket/ソケットアドレス構造体を pack した文字列 で返します。 |
|
pair(domain, type, protocol)
|
相互に結合されたソケットのペアを含む2要素の配列を返します。 引数の指定は Socket.open と同じです。 |
|
unpack_sockaddr_in(sockaddr)
|
socket/ソケットアドレス構造体を pack した文字列を unpack したアドレスを返します。返される値は [port, ipaddr] の配列です。 |
|
unpack_sockaddr_un(sockaddr)
|
socket/ソケットアドレス構造体を pack した文字列を unpack したソケットパス名を返します。 |
定義 | 説明 | |
---|---|---|
accept
|
新しい接続を受け付けて、新しい接続に対するソケットとアドレスの ペアを返します。accept(2) を参照。 |
|
accept_nonblock
|
ソケットをノンブロッキングモードに設定した後、 accept(2) を呼び出します。 |
|
bind(my_sockaddr)
|
ソケットを my_sockaddr に結合します。bind(2) と同じ働きをします。my_sockaddr は socket/ソケットアドレス構造体を pack した文字列 です。 |
|
connect(server_sockaddr)
|
connect(2) と同じ働きをします。server_sockaddr は、 socket/ソケットアドレス構造体を pack した文字列 です。 |
|
connect_nonblock(server_sockaddr)
|
ソケットをノンブロッキングモードに設定した後、 connect(2) を呼び出します。 |
|
listen(backlog)
|
listen(2) と同じ働きをします。 |
|
recvfrom(maxlen[, flags])
|
recv と同様にソケットからデータを受け取りますが、 戻り値は文字列と相手ソケットのアドレスのペアです。引数につい ては recv と同様です。 |
|
recvfrom_nonblock(maxlen[, flags])
|
ソケットをノンブロッキングモードに設定した後、 recvfrom(2) を呼び出します。 |
|
sysaccept
|
接続したクライアントのファイル記述子とアドレスのペアを返すことを除 けば Socket#accept と同じです。 |
getpeername
getsockname
getsockopt
recv
recv_nonblock
send
setsockopt
shutdown
.do_not_reverse_lookup
.for_fd
<<
binmode
bytes
chars
clone
close
close_read
close_write
closed?
each
each_byte
eof
expect
fcntl
fileno
flush
fsync
getbyte
getc
gets
ioctl
isatty
lineno
lineno=
lines
nonblock
nonblock=
nonblock?
pid
pos
pos=
print
printf
putc
puts
read
read_nonblock
readbyte
readbytes
readchar
readline
readlines
readpartial
ready?
reopen
rewind
scanf
seek
stat
sync
sync=
sysread
sysseek
syswrite
to_io
to_ptr
ungetc
wait
write
write_nonblock
.foreach
.pipe
.popen
.read
.readlines
.select
.sysopen
::SEEK_CUR
::SEEK_END
::SEEK_SET
==
===
=~
__id__
__send__
_dump
class
dclone
display
enum_for
eql?
equal?
extend
freeze
frozen?
hash
initialize
initialize_copy
inspect
instance_eval
instance_exec
instance_of?
instance_variable_defined?
instance_variable_get
instance_variable_set
instance_variables
is_a?
marshal_dump
marshal_load
method
method_missing
methods
nil?
pretty_inspect
pretty_print
pretty_print_cycle
pretty_print_inspect
pretty_print_instance_variables
private_methods
protected_methods
public_methods
remove_instance_variable
respond_to?
singleton_method_added
singleton_method_removed
singleton_method_undefined
singleton_methods
taint
tainted?
tap
to_a
to_ary
to_hash
to_int
to_proc
to_regexp
to_s
to_str
to_yaml
to_yaml_properties
to_yaml_style
untaint