Netty(九)-ServerSocketChannel和SocketChannel

一、ServerSocketChannel

1)、ServerSocketChannelは、サーバー側で新しいクライアントソケット接続を監視します

2)、パブリック抽象クラスServerSocketChannelはAbstractSelectableChannelを拡張し、NetworkChannelを実装します

3)、関連する方法

方法 説明
public static ServerSocketChannel open() ServerSocketChannelチャネルを取得します
public final ServerSocketChannel bind(SocketAddress local) サーバーのポート番号を設定します
public final SelectableChannel configureBlocking(boolean block) ブロッキングモードまたは非ブロッキングモードを設定し、falseに設定して非ブロッキングモードを使用します
public abstract SocketChannel accept() 接続を受け入れ、この接続を表すチャネルオブジェクトを返します
public final SelectionKey register(Selector sel、int ops) セレクターを登録し、リスニングイベントを設定します

二、SocketChannel

1)、SocketChannel、ネットワークIOチャネル、特に読み取りおよび書き込み操作を担当しますNIOは、バッファ内のデータをチャネルに書き込むか、チャネル内のデータをバッファに読み取ります

2)、パブリック抽象クラスSocketChannelはAbstractSelectableChannelを
拡張し、ByteChannel、ScatteringByteChannel、GatheringByteChannel、NetworkChannelを実装します

3)、関連する方法

方法 説明
public static SocketChannel open() SocketChannelチャネルを取得します
public final SelectableChannel configureBlocking(boolean block) ブロッキングモードまたは非ブロッキングモードを設定し、falseに設定して非ブロッキングモードを使用します
public abstract boolean connect(SocketAddress remote) サーバーに接続します
public abstract boolean finishConnect() 接続メソッドが接続に失敗した場合、次のステップは、finishConnectメソッドを介して接続操作を完了することです。
public abstract int write(ByteBuffer src) チャネルにデータを書き込む
public abstract int read(ByteBuffer dst) チャネルからデータを読み取る
public final SelectionKey register(Selector sel、int ops、Object att) セレクターを登録し、リスニングイベントを設定します。最後のパラメーターは、データを共有するように設定できます。
public final void close() チャネルを閉じる

おすすめ

転載: blog.csdn.net/yangxshn/article/details/113726171