るりまサーチ

最速Rubyリファレンスマニュアル検索!
192件ヒット [1-100件を表示] (0.019秒)
トップページ > クエリ:server[x] > クエリ:TCPServer[x]

別のキーワード

  1. socket tcp_server_sockets
  2. socket udp_server_sockets
  3. socket tcp_server_loop
  4. socket udp_server_loop
  5. socket unix_server_socket

ライブラリ

モジュール

キーワード

検索結果

<< 1 2 > >>

TCPServer (44024.0)

TCP/IP ストリーム型接続のサーバ側のソケットのクラスです。

...ができます。

例えば echo サーバは以下のようになります。

require "socket"

gs = TCPServer.open(0)
socks = [gs]
addr = gs.addr
addr.shift
printf("server is on %s\n", addr.join(":"))

while true
nsock = select(socks)
next if nsock == nil
for s in...
...)
end
end
end
end

Thread を使えばもっと短くなります。

require "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...

TCPServer.new(host=nil, service) -> TCPServer (24202.0)

新しいサーバー接続をオープンします。service は /etc/services (または NIS) に登録されているサービ ス名かポート番号で指定します。host を指定した時は 指定したホストに対しての接続だけを受け付けます。

新しいサーバー接続をオープンします。service は
/etc/services (または NIS) に登録されているサービ
ス名かポート番号で指定します。host を指定した時は
指定したホストに対しての接続だけを受け付けます。

省略時は全てのホストへの接続要求を受け付けることになります。
new, open は内部では getaddrinfo(3) を呼び出しており、
複数のアドレス構造体が検出された場合、
最初に見つかったものを返します。
実行環境によっては IPv4, IPv6 のどちらか専用の接続になる場合がありますが、
その場合、host を省略せず明示的に指定することで、接...

TCPServer.open(host=nil, service) -> TCPServer (24202.0)

新しいサーバー接続をオープンします。service は /etc/services (または NIS) に登録されているサービ ス名かポート番号で指定します。host を指定した時は 指定したホストに対しての接続だけを受け付けます。

新しいサーバー接続をオープンします。service は
/etc/services (または NIS) に登録されているサービ
ス名かポート番号で指定します。host を指定した時は
指定したホストに対しての接続だけを受け付けます。

省略時は全てのホストへの接続要求を受け付けることになります。
new, open は内部では getaddrinfo(3) を呼び出しており、
複数のアドレス構造体が検出された場合、
最初に見つかったものを返します。
実行環境によっては IPv4, IPv6 のどちらか専用の接続になる場合がありますが、
その場合、host を省略せず明示的に指定することで、接...

TCPServer#sysaccept -> Integer (24022.0)

接続したクライアントのソケットをファイル記述子で返すことを除けば TCPServer#accept と同じです。

...接続したクライアントのソケットをファイル記述子で返すことを除けば
TCPServer
#accept と同じです。

例:

require 'socket'

TCPServer
.open("", 0) {|serv|
c = TCPSocket.new(*serv.addr.values_at(3,1))
p serv.sysaccept #=> 6
}...

TCPServer#accept -> TCPSocket (24006.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"
}...

絞り込み条件を変える

TCPServer#accept_nonblock -> TCPSocket (24006.0)

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

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

返り値は TCPServer#accept と同じです。

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

@raise Errno::EXXX accept(2) が...

TCPServer#listen(backlog) -> 0 (24000.0)

listen(2) を実行します。 (Socket#listenと同じ)

listen(2) を実行します。
(Socket#listenと同じ)

backlog は、クライアントからの接続要求を保留できる数です。

listen(2) が成功すれば 0 を返します。
失敗すれば 例外 Errno::EXXX が発生します。

@param backlog backlog は、クライアントからの接続要求を保留できる数です。

@raise Errno::EXXX listen(2) が失敗すれば 例外 Errno::EXXX が発生します。

@return listen(2) が成功すれば 0 を返します。

OpenSSL::SSL::SSLServer (6024.0)

SSL サーバーのためのクラス。

...SSL サーバーのためのクラス。

TCPServer
をラップするクラスで、TCPServer で接続した
ソケットを OpenSSL::SSL::SSLSocket でラップする機能を持ちます。
おおよそ TCPServer と同様のメソッドを持ちます。

基本的には SSL サーバを簡単...
...include OpenSSL

ctx = SSL::SSLContext.new()
ctx.cert = X509::Certificate.new(File.read('cert.pem'))
ctx.key = PKey::RSA.new(File.read('privkey.pem'))
svr = TCPServer.new(2007)
serv = SSL::SSLServer.new(svr, ctx)

loop do
while soc = serv.accept
puts soc.read
end
end...

WEBrick::GenericServer#listen(address, port) -> [TCPServer] (3223.0)

与えられたアドレスとポートで TCPServer オブジェクトを生成し listener として管理します。

...れたアドレスとポートで TCPServer オブジェクトを生成し
listener として管理します。

@param address アドレスを文字列で指定します。

@param port listen するポートを整数で指定します。

@see WEBrick::GenericServer#listeners, TCPServer#listen...
<< 1 2 > >>