種類
- インスタンスメソッド (36)
- 定数 (24)
- クラス (24)
- 特異メソッド (24)
クラス
- BasicSocket (12)
- Socket (36)
- TCPServer (12)
- UNIXServer (12)
モジュール
-
Socket
:: Constants (12)
検索結果
先頭5件
-
UNIXServer
# accept -> UnixSocket (6126.0) -
クライアントからの接続要求を accept(2)で待ち受け、接続した UNIXSocket のインスタンスを返します。
...ept(2)で待ち受け、接続した
UNIXSocket のインスタンスを返します。
例:
require 'socket'
UNIXServer.open("/tmp/s") {|serv|
c = UNIXSocket.open("/tmp/s")
s = serv.accept
s.write "from server"
c.write "from client"
p c.recv(20) #=> "from server"
p... -
Socket
:: Constants :: TCP _ NOPUSH -> Integer (6118.0) -
Don't push the last block of write。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Don't push the last block of write。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(4freebsd), tcp(7linux)... -
Socket
:: TCP _ NOPUSH -> Integer (6118.0) -
Don't push the last block of write。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。
...Don't push the last block of write。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。
@see tcp(4freebsd), tcp(7linux)... -
TCPServer
# accept -> TCPSocket (6114.0) -
クライアントからの接続要求を受け付け、接続した TCPSocket のインスタンスを返します。
...クライアントからの接続要求を受け付け、接続した
TCPSocket のインスタンスを返します。
例:
require 'socket'
TCPServer.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
s = serv.accept
c.write "foo"
p s.recv(10) #=> "foo"
}... -
Socket
. tcp(host , port , local _ host=nil , local _ port=nil , connect _ timeout: nil) -> Socket (6108.0) -
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
...TCP/IP で host:port に接続するソケットオブジェクトを作成します。
local_host や local_port を指定した場合、ソケットをそこにバインドします。
ブロックを渡すと、生成したソケットをそのブロックに渡し呼び出します。
ブロ......al_port 接続元のポート番号
@param connect_timeout タイムアウトまでの秒数
@return ブロック付きで呼ばれた場合はブロックが返した値です。
ブロックなしで呼ばれた場合はソケットオブジェクトを返します。
require 'socket'......Socket.tcp("www.ruby-lang.org", 80) {|sock|
sock.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
sock.close_write
puts sock.read
}... -
Socket
. tcp(host , port , local _ host=nil , local _ port=nil , connect _ timeout: nil) {|socket| . . . } -> object (6108.0) -
TCP/IP で host:port に接続するソケットオブジェクトを作成します。
...TCP/IP で host:port に接続するソケットオブジェクトを作成します。
local_host や local_port を指定した場合、ソケットをそこにバインドします。
ブロックを渡すと、生成したソケットをそのブロックに渡し呼び出します。
ブロ......al_port 接続元のポート番号
@param connect_timeout タイムアウトまでの秒数
@return ブロック付きで呼ばれた場合はブロックが返した値です。
ブロックなしで呼ばれた場合はソケットオブジェクトを返します。
require 'socket'......Socket.tcp("www.ruby-lang.org", 80) {|sock|
sock.print "GET / HTTP/1.0\r\nHost: www.ruby-lang.org\r\n\r\n"
sock.close_write
puts sock.read
}... -
TCPServer (6014.0)
-
TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
...TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。
このクラスによって簡単にソケットを利用したサーバのプログラミングができます。
例えば echo サーバは以下のようになります。
require "socket"
gs = TCPServer......s in nsock[0]
if s == gs
socks.push(s.accept)
print(s, " is accepted\n")
else
if s.eof?
print(s, " is gone\n")
s.close
socks.delete(s)
else
str = s.gets
s.write(str)
end
end
end
end
Th......equire "socket"
gs = TCPServer.open(0)
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))
while true
Thread.start(gs.accept) do |s| # save to dynamic variable
print(s, " is accepted\n")
while s.gets
s.write($_)
end
print(s,... -
TCPSocket (6008.0)
-
インターネットドメインのストリーム型ソケットのクラスです。
...をそのままサーバに転送するプログラムは以下の
ようになります。
require "socket"
port = if ARGV.size > 0 then ARGV.shift else 4444 end
print port, "\n"
s = TCPSocket.open("localhost", port)
while gets
s.write($_)
print(s.gets)
end
s.close... -
BasicSocket
# recv(maxlen , flags = 0) -> String (26.0) -
ソケットからデータを受け取り、文字列として返します。 maxlen は受け取る最大の長さを指定します。 flags については recv(2) を参照してください。flags の デフォルト値は 0 です。flags の指定に必要な定数は Socket クラスで定義されています。(例: Socket::MSG_PEEK)
...数は
Socket クラスで定義されています。(例: Socket::MSG_PEEK)
内部で呼び出す recv(2) が 0 を返した場合、このメソッドは "" を返します。
この意味はソケットによって異なります。
たとえば TCP では EOF を意味しますし、
UDP では......@param maxlen 受け取る文字列の最大の長さを指定します。
@param flags recv(2) を参照してください。
@raise IOError
@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。
例:
require 'socket'
s1, s2 = UNIXSocket.pair
s1.write......"a"
s1.close
p s2.recv(10, Socket::MSG_PEEK) #=> "a"
p s2.recv(10) #=> "a"
p s2.recv(10) #=> ""...