Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > socketライブラリ > BasicSocketクラス

class BasicSocket

クラスの継承リスト: BasicSocket < IO < Enumerable < File::Constants < Object < Kernel < BasicObject

要約

ソケットを表す抽象クラスです。具体的なソケット操作はサブクラスで 定義されます。 例えばインターネットドメインストリームソケットの場合は TCPSocket を用います。

特異メソッド

定義 説明
do_not_reverse_lookup -> bool
do_not_reverse_lookup=(bool)

この値が真ならアドレスからホスト名への逆引きを行わなくなります。 デフォルトは true です。 この設定は大域的に作用します。

for_fd(fd) -> Object

ファイルディスクリプタ fd に対する新しいソケットを生成します。 このメソッドは Socket クラスからこのクラスに移動しました。 これにより、任意のソケットである fd から対応するソケッ トクラスを作ることができます。

インスタンスメソッド

定義 説明
do_not_reverse_lookup
do_not_reverse_lookup=(bool)

アドレスからホスト名への逆引きの設定をソケットごとに設定します。 初期値はソケットを生成したときの BasicSocket.do_not_reverse_lookup になります。

getpeername -> String

接続の相手先のソケットの情報を取得します。sockaddr 構造体をパッ クした文字列を返します。getpeername(2) を参照してください。

getsockname -> String

ソケットの情報を取得します。sockaddr 構造体をパックした 文字列を返します。getsockname(2) を参照してください。

getsockopt(level, optname) -> String

ソケットのオプションを取得します。getsockopt(2) を参照してください。取得したオプションのデータをパックした文字列を 返します。

recv(maxlen, flags = 0) -> String

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

recv_nonblock(maxlen, flags = 0) -> String

ソケットをノンブロッキングモードに設定した後、 recvfrom(2) でソケットからデータを受け取ります。

send(mesg, flags, dest_sockaddr = nil) -> Fixnum

ソケットを介してデータを送ります。flags に関しては send(2) を参照してください。connect していないソケット に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ たデータの長さを返します。

setsockopt(level, optname, optval) -> 0

ソケットのオプションを設定します。setsockopt(2) を参照してください。

shutdown(how = Socket::SHUT_RDWR) -> 0

ソケットの以降の接続を終了させます。 how の値によって以下のように接続が終了します。

継承したメソッド

! != << autoclose= autoclose? binmode binmode? bytes chars clone close close_on_exec= close_on_exec? close_read close_write closed? codepoints each each_byte eof expect external_encoding fcntl fdatasync fileno flush fsync getbyte getc gets internal_encoding ioctl isatty lineno lineno= lines nonblock nonblock= nonblock? nread pid pos pos= print printf putc puts read read_nonblock readbyte readchar readline readlines readpartial ready? reopen rewind scanf seek set_encoding stat sync sync= sysread sysseek syswrite to_io ungetbyte ungetc wait write write_nonblock .binread .copy_stream .for_fd .foreach .pipe .popen .read .readlines .select .sysopen .try_convert ::SEEK_CUR ::SEEK_END ::SEEK_SET ::WaitReadable ::WaitWritable == === =~ __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 must_be must_be_close_to must_be_empty must_be_instance_of must_be_kind_of must_be_nil must_be_same_as must_be_within_epsilon must_equal must_include must_match must_raise must_respond_to must_send must_throw 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? respond_to_missing? singleton_class 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 trust untaint untrust untrusted? wont_be wont_be_close_to wont_be_empty wont_be_instance_of wont_be_kind_of wont_be_nil wont_be_same_as wont_be_within_epsilon wont_equal wont_include wont_match wont_respond_to