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

class BasicSocket

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

要約

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

特異メソッド

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

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

for_fd(fd) -> Object

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

インスタンスメソッド

定義 説明
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 の値によって以下のように接続が終了します。

継承したメソッド

<< 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 .for_fd .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