Java in a Nutshell, 5th Edition [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Java in a Nutshell, 5th Edition [Electronic resources] - نسخه متنی

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید


ServerSocketChanneljava.nio.channels

Java 1.4closeable

This
class
is the java.nio version of
java.net.ServerSocket. It is a selectable channel
that can be used by servers to accept connections from clients.
Unlike other channel classes in this package, this class cannot be
used for reading or writing bytes: it does not implement any of the
ByteChannel interfaces, and exists only to accept
and establish connections with clients, not to communicate with those
clients. ServerSocketChannel differs from
java.net.ServerSocket in two important ways: it
can put into nonblocking mode and used with a
Selector, and its accept(
) method returns a
SocketChannel rather than a
Socket, so that communication with the client
whose connection was just accepted can be done using the
java.nio APIs.

Create a new ServerSocketChannel with the static
open( ) method. Next, call socket(
) to obtain the associated ServerSocket
object, and use its bind( ) method to bind the
server socket to a specific port on the local host. You can also call
any other ServerSocket methods to configure other
socket options at this point.

To accept a new connection through this
ServerSocketChannel, simply call accept(
). If the channel is in blocking mode, this method will
block until a client connects, and will then return a
SocketChannel that is connected to the client. In
nonblocking mode, (see the inherited configureBlocking(
) method) accept( ) returns a
SocketChannel only if there is a client currently
waiting to connect, and otherwise immediately returns
null. To be notified when a client is waiting to
connect, use the inherited register( ) method to
register nonblocking a ServerSocketChannel with a
Selector and specify an interest in accept
operations with the SelectionKey.OP_ACCEPT
constant. See Selector and
SelectionKey for further details.

Note that the SocketChannel object returned by the
accept( ) method is always in nonblocking mode,
regardless of the blocking mode of the
ServerSocketChannel.

ServerSocketChannel is thread-safe; only one
thread may call the accept( ) method at a time.
When a ServerSocketChannel is no longer required,
close it with the inherited close( ) method.


Figure 13-38. java.nio.channels.ServerSocketChannel

public abstract class

ServerSocketChannel extends java.nio.channels.spi.
AbstractSelectableChannel {
// Protected Constructors
protected

ServerSocketChannel (java.nio.channels.spi.SelectorProvider

provider );
// Public Class Methods
public static ServerSocketChannel

open ( ) throws java.io.IOException;
// Public Instance Methods
public abstract SocketChannel

accept ( ) throws java.io.IOException;
public abstract java.net.ServerSocket

socket ( );
// Public Methods Overriding SelectableChannel
public final int

validOps ( );
}


Returned By


java.net.ServerSocket.getChannel( ),
java.nio.channels.spi.SelectorProvider.openServerSocketChannel(
)


    / 1191