public class AioChannel extends SocketChannel implements Function<AioBufferWriter,Void>
| 限定符和类型 | 字段和说明 |
|---|---|
protected AioBufferWriter |
bufferWriter
数据输出组建
|
protected AsynchronousSocketChannel |
channel
通信channel对象
|
protected ByteBuffer |
readByteBuffer
读缓冲。
|
protected ByteBuffer |
writeByteBuffer
写缓冲
|
CHANNEL_STATUS_CLOSED, CHANNEL_STATUS_ENABLED, channelAttribute, channelFutureListener, chunkPool, config, defaultChannelPipeline, handShak, initiateClose, keepAlive, logger, status| 构造器和说明 |
|---|
AioChannel(AsynchronousSocketChannel channel,
BaseConfig config,
ReadCompletionHandler readCompletionHandler,
WriteCompletionHandler writeCompletionHandler,
ChunkPool chunkPool,
ChannelPipeline channelPipeline) |
| 限定符和类型 | 方法和说明 |
|---|---|
Void |
apply(AioBufferWriter input)
基于F值返回T
|
void |
close()
立即关闭会话
|
void |
close(boolean initiateClose)
主动关闭
|
protected void |
continueRead()
读取socket通道内的数据
|
AsynchronousSocketChannel |
getAsynchronousSocketChannel() |
ChannelPipeline |
getChannelPipeline() |
InetSocketAddress |
getLocalAddress()
获取本地地址
|
InetSocketAddress |
getRemoteAddress()
获取远程地址
|
SslHandler |
getSslHandler()
获取ssl服务
|
void |
readCompleted(ByteBuffer readBuffer)
socket读取完成
|
void |
readFromChannel(boolean eof)
socket通道的读回调操作
|
void |
setSslHandler(SslHandler sslHandler)
设置SSLHandler
|
void |
setSslHandshakeCompletedListener(IHandshakeCompletedListener handshakeCompletedListener) |
void |
starRead()
开始读取,很重要,只有调用该方法,才会开始监听消息读取
|
void |
writeAndFlush(Object obj)
写数据到责任链管道
|
void |
writeCompleted()
写操作完成回调
需要同步控制
|
void |
writeToChannel(Object obj)
写到BufferWriter输出器,不经过责任链
|
getChannelAttribute, getChannelAttribute, getChannelId, getChunkPool, getConfig, getDefaultChannelPipeline, getSocketChannel, invokePipeline, invokePipeline, isHandShak, isInitiateClose, isInvalid, isKeepAlive, readToPipeline, removeChannelAttribute, reverseInvokePipeline, setChannelAttribute, setChannelFutureListener, setHandShak, setKeepAliveprotected AsynchronousSocketChannel channel
protected ByteBuffer readByteBuffer
protected ByteBuffer writeByteBuffer
protected AioBufferWriter bufferWriter
public AioChannel(AsynchronousSocketChannel channel, BaseConfig config, ReadCompletionHandler readCompletionHandler, WriteCompletionHandler writeCompletionHandler, ChunkPool chunkPool, ChannelPipeline channelPipeline)
channel - 通道config - 配置readCompletionHandler - 读回调writeCompletionHandler - 写回调chunkPool - 内存池channelPipeline - 责任链public void starRead()
starRead 在类中 SocketChannelpublic void close()
close 在类中 SocketChannelpublic void close(boolean initiateClose)
close 在类中 SocketChannelinitiateClose - protected void continueRead()
public void readFromChannel(boolean eof)
eof - 状态回调标记public void readCompleted(ByteBuffer readBuffer)
readBuffer - 读取的缓冲区public void writeAndFlush(Object obj)
writeAndFlush 在类中 SocketChannelobj - 写入的数据public void writeToChannel(Object obj)
writeToChannel 在类中 SocketChannelobj - 写入的数组public void writeCompleted()
public final InetSocketAddress getLocalAddress() throws IOException
getLocalAddress 在类中 SocketChannelIOException - 异常public final InetSocketAddress getRemoteAddress() throws IOException
getRemoteAddress 在类中 SocketChannelIOException - 异常public AsynchronousSocketChannel getAsynchronousSocketChannel()
public ChannelPipeline getChannelPipeline()
getChannelPipeline 在类中 SocketChannelpublic void setSslHandler(SslHandler sslHandler)
setSslHandler 在类中 SocketChannelpublic SslHandler getSslHandler()
SocketChannelgetSslHandler 在类中 SocketChannelpublic void setSslHandshakeCompletedListener(IHandshakeCompletedListener handshakeCompletedListener)
public Void apply(AioBufferWriter input)
Functionapply 在接口中 Function<AioBufferWriter,Void>Copyright © 2021. All rights reserved.