public final class NioDatagramChannel extends AbstractNioMessageChannel implements DatagramChannel
Channel发送和接收的AddressedEnvelope
。
AddressedEnvelope , DatagramPacket
AbstractNioChannel.AbstractNioUnsafe, AbstractNioChannel.NioUnsafeAbstractChannel.AbstractUnsafeChannel.UnsafereadInterestOp| Constructor and Description |
|---|
NioDatagramChannel()
创建一个将使用操作系统默认值 InternetProtocolFamily的新实例。
|
NioDatagramChannel(java.nio.channels.DatagramChannel socket)
从给定的
DatagramChannel创建一个新实例。
|
NioDatagramChannel(InternetProtocolFamily ipFamily)
使用给定的 InternetProtocolFamily创建一个新实例。
|
NioDatagramChannel(java.nio.channels.spi.SelectorProvider provider)
使用给定的 SelectorProvider创建一个新实例,该实例将使用操作系统默认值InternetProtocolFamily 。
|
NioDatagramChannel(java.nio.channels.spi.SelectorProvider provider, InternetProtocolFamily ipFamily)
使用给定的 SelectorProvider和InternetProtocolFamily创建一个新实例。
|
| Modifier and Type | Method and Description |
|---|---|
ChannelFuture |
block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock)
阻止给定多播地址的给定sourceToBlock地址
|
ChannelFuture |
block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock, ChannelPromise promise)
阻止给定多播地址的给定sourceToBlock地址
|
ChannelFuture |
block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock)
阻止给定networkInterface上给定多播地址的给定sourceToBlock地址
|
ChannelFuture |
block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock, ChannelPromise promise)
阻止给定networkInterface上给定多播地址的给定sourceToBlock地址
|
protected boolean |
closeOnReadError(java.lang.Throwable cause) |
DatagramChannelConfig |
config()
返回此频道的配置。
|
protected boolean |
continueOnWriteError()
如果我们应该在写入错误时继续写入循环,则返回
true 。
|
protected void |
doBind(java.net.SocketAddress localAddress)
将 Channel绑定到SocketAddress
|
protected void |
doClose()
关闭 Channel
|
protected boolean |
doConnect(java.net.SocketAddress remoteAddress, java.net.SocketAddress localAddress)
连接到远程对等
|
protected void |
doDisconnect()
断开此 Channel与其远程对等端的连接
|
protected void |
doFinishConnect()
完成连接
|
protected int |
doReadMessages(java.util.List<java.lang.Object> buf)
将消息读入给定数组并返回读取的数量。
|
protected boolean |
doWriteMessage(java.lang.Object msg, ChannelOutboundBuffer in)
写下消息到底层
Channel 。
|
protected java.lang.Object |
filterOutboundMessage(java.lang.Object msg)
当新消息添加到此 AbstractChannel的ChannelOutboundBuffer中时调用 ,以便Channel实现将消息转换为另一个消息。
|
boolean |
isActive()
如果 Channel处于活动状态且已连接,则返回true 。
|
boolean |
isConnected()
如果 DatagramChannel连接到远程对等端,则返回true 。
|
protected java.nio.channels.DatagramChannel |
javaChannel() |
ChannelFuture |
joinGroup(java.net.InetAddress multicastAddress)
加入一个多播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
joinGroup(java.net.InetAddress multicastAddress, ChannelPromise promise)
一旦操作完成,就加入多播组并通知 ChannelFuture 。
|
ChannelFuture |
joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)
在指定的接口加入指定的组播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, ChannelPromise promise)
在指定的接口加入指定的组播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)
在指定的接口加入指定的组播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, ChannelPromise promise)
在指定的接口加入指定的组播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetAddress multicastAddress)
一个操作完成后,离开多播组并通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetAddress multicastAddress, ChannelPromise promise)
一旦操作完成,就离开多播组并通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)
在指定的接口上使用指定的源保留指定的多播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, ChannelPromise promise)
在指定的接口上使用指定的源保留指定的多播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)
在指定的本地接口上留下多播组,并在操作完成后通知 ChannelFuture 。
|
ChannelFuture |
leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, ChannelPromise promise)
在指定的本地接口上留下多播组,并在操作完成后通知 ChannelFuture 。
|
java.net.InetSocketAddress |
localAddress()
返回此通道绑定的本地地址。
|
protected java.net.SocketAddress |
localAddress0()
返回本地绑定的
SocketAddress 。
|
ChannelMetadata |
metadata()
返回 ChannelMetadata的的Channel其描述的性质Channel 。
|
java.net.InetSocketAddress |
remoteAddress()
返回此通道连接到的远程地址。
|
protected java.net.SocketAddress |
remoteAddress0()
返回 SocketAddress其中Channel被连接到。
|
protected void |
setReadPending(boolean readPending)
已过时。
|
doBeginRead, doWrite, newUnsafeclearReadPending, doDeregister, doRegister, eventLoop, isCompatible, isOpen, isReadPending, newDirectBuffer, newDirectBuffer, selectionKey, unsafealloc, bind, bind, bytesBeforeUnwritable, bytesBeforeWritable, close, close, closeFuture, compareTo, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, doShutdownOutput, equals, flush, hashCode, id, invalidateLocalAddress, invalidateRemoteAddress, isRegistered, isWritable, newChannelPipeline, newFailedFuture, newId, newProgressivePromise, newPromise, newSucceededFuture, parent, pipeline, read, toString, voidPromise, write, write, writeAndFlush, writeAndFlushattr, hasAttrclone, finalize, getClass, notify, notifyAll, wait, wait, waitalloc, bytesBeforeUnwritable, bytesBeforeWritable, closeFuture, eventLoop, flush, id, isOpen, isRegistered, isWritable, parent, pipeline, read, unsafeattr, hasAttrbind, bind, close, close, connect, connect, connect, connect, deregister, deregister, disconnect, disconnect, newFailedFuture, newProgressivePromise, newPromise, newSucceededFuture, voidPromise, write, write, writeAndFlush, writeAndFlushpublic NioDatagramChannel()
InternetProtocolFamily的新实例。
public NioDatagramChannel(java.nio.channels.spi.SelectorProvider provider)
SelectorProvider创建一个新实例,该实例将使用操作系统默认值InternetProtocolFamily 。
public NioDatagramChannel(InternetProtocolFamily ipFamily)
InternetProtocolFamily创建一个新实例。
如果使用null ,则取决于将要选择的操作系统默认值。
public NioDatagramChannel(java.nio.channels.spi.SelectorProvider provider,
InternetProtocolFamily ipFamily)
SelectorProvider和InternetProtocolFamily创建一个新实例。
如果InternetProtocolFamily是null它将取决于将选择的操作系统默认值。
public NioDatagramChannel(java.nio.channels.DatagramChannel socket)
DatagramChannel创建一个新实例。
public ChannelMetadata metadata()
Channel复制的描述
ChannelMetadata的的Channel其描述的性质Channel 。
public DatagramChannelConfig config()
Channel
config在界面
Channel
config在界面
DatagramChannel
public boolean isConnected()
DatagramChannel
DatagramChannel连接到远程对等端,则返回true 。
isConnected在界面
DatagramChannel
protected java.nio.channels.DatagramChannel javaChannel()
javaChannel在课堂上
AbstractNioChannel
protected java.net.SocketAddress localAddress0()
AbstractChannel
SocketAddress 。
localAddress0在课堂
AbstractChannel
protected java.net.SocketAddress remoteAddress0()
AbstractChannel
SocketAddress连接的SocketAddress 。
remoteAddress0在课堂上
AbstractChannel
protected void doBind(java.net.SocketAddress localAddress)
throws java.lang.Exception
AbstractChannel
Channel绑定到SocketAddress
doBind在课堂
AbstractChannel
java.lang.Exception
protected boolean doConnect(java.net.SocketAddress remoteAddress,
java.net.SocketAddress localAddress)
throws java.lang.Exception
AbstractNioChannel
doConnect的
AbstractNioChannel
java.lang.Exception
protected void doFinishConnect()
throws java.lang.Exception
AbstractNioChannel
doFinishConnect在课堂上
AbstractNioChannel
java.lang.Exception
protected void doDisconnect()
throws java.lang.Exception
AbstractChannel
Channel与其远程对等端的连接
doDisconnect在课堂上
AbstractChannel
java.lang.Exception
protected void doClose()
throws java.lang.Exception
AbstractChannel
Channel
doClose在课堂上
AbstractNioChannel
java.lang.Exception
protected int doReadMessages(java.util.List<java.lang.Object> buf)
throws java.lang.Exception
AbstractNioMessageChannel
doReadMessages在课堂
AbstractNioMessageChannel
java.lang.Exception
protected boolean doWriteMessage(java.lang.Object msg,
ChannelOutboundBuffer in)
throws java.lang.Exception
AbstractNioMessageChannel
Channel写一条消息。
doWriteMessage在课堂上
AbstractNioMessageChannel
true当且仅当消息已被写入
java.lang.Exception
protected java.lang.Object filterOutboundMessage(java.lang.Object msg)
AbstractChannel
ChannelOutboundBuffer如此AbstractChannel ,使Channel实施消息转换为另一种。
(例如堆缓冲区 - >直接缓冲区)
protected boolean continueOnWriteError()
AbstractNioMessageChannel
true 。
public java.net.InetSocketAddress localAddress()
Channel复制的描述
SocketAddress应该被下调为更具体的类型,例如InetSocketAddress以检索详细信息。
localAddress在界面
Channel
localAddress在界面
DatagramChannel
localAddress在课堂
AbstractChannel
null如果此通道未绑定。
public java.net.InetSocketAddress remoteAddress()
Channel复制的描述
SocketAddress应该被下调为更具体的类型,例如InetSocketAddress以检索详细信息。
remoteAddress在界面
Channel
remoteAddress在界面
DatagramChannel
remoteAddress在课堂上
AbstractChannel
null如果此通道未连接。
如果此通道未连接,但它可以接收来自任意远程地址的消息(例如DatagramChannel ,请使用DefaultAddressedEnvelope.recipient()来确定接收消息的来源,因为此方法将返回null 。
public ChannelFuture joinGroup(java.net.InetAddress multicastAddress)
DatagramChannel
ChannelFuture 。
joinGroup ,界面
DatagramChannel
public ChannelFuture joinGroup(java.net.InetAddress multicastAddress, ChannelPromise promise)
DatagramChannel
ChannelFuture 。
给定的ChannelFuture将被通知并且返回。
joinGroup在界面
DatagramChannel
public ChannelFuture joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)
DatagramChannel复制的描述
ChannelFuture 。
joinGroup在界面
DatagramChannel
public ChannelFuture joinGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, ChannelPromise promise)
DatagramChannel复制的描述
ChannelFuture 。
给定的ChannelFuture将被通知并且返回。
joinGroup在界面
DatagramChannel
public ChannelFuture joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)
DatagramChannel
ChannelFuture 。
joinGroup在界面
DatagramChannel
public ChannelFuture joinGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, ChannelPromise promise)
DatagramChannel复制的描述
ChannelFuture 。
给定的ChannelFuture将被通知并返回。
joinGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetAddress multicastAddress)
DatagramChannel
ChannelFuture 。
leaveGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, ChannelPromise promise)
DatagramChannel
ChannelFuture 。
给定的ChannelFuture将被通知并返回。
leaveGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface)
DatagramChannel复制的描述
ChannelFuture 。
leaveGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetSocketAddress multicastAddress, java.net.NetworkInterface networkInterface, ChannelPromise promise)
DatagramChannel复制的描述
ChannelFuture 。
给定的ChannelFuture将被通知并且返回。
leaveGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source)
DatagramChannel复制的描述
ChannelFuture 。
leaveGroup在界面
DatagramChannel
public ChannelFuture leaveGroup(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress source, ChannelPromise promise)
DatagramChannel
ChannelFuture 。
给定的ChannelFuture将被通知并且返回。
leaveGroup在界面
DatagramChannel
public ChannelFuture block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock)
block在界面
DatagramChannel
public ChannelFuture block(java.net.InetAddress multicastAddress, java.net.NetworkInterface networkInterface, java.net.InetAddress sourceToBlock, ChannelPromise promise)
block在界面
DatagramChannel
public ChannelFuture block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock)
block在界面
DatagramChannel
public ChannelFuture block(java.net.InetAddress multicastAddress, java.net.InetAddress sourceToBlock, ChannelPromise promise)
block在界面
DatagramChannel
@Deprecated protected void setReadPending(boolean readPending)
setReadPending在课堂
AbstractNioChannel
protected boolean closeOnReadError(java.lang.Throwable cause)
Copyright © 2008–2018 The Netty Project. All rights reserved.