AsynchronousServerSocketChannel 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
面向流的侦听套接字的异步通道。
[Android.Runtime.Register("java/nio/channels/AsynchronousServerSocketChannel", ApiSince=26, DoNotGenerateAcw=true)]
public abstract class AsynchronousServerSocketChannel : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Nio.Channels.IAsynchronousChannel
[<Android.Runtime.Register("java/nio/channels/AsynchronousServerSocketChannel", ApiSince=26, DoNotGenerateAcw=true)>]
type AsynchronousServerSocketChannel = class
inherit Object
interface IAsynchronousChannel
interface IChannel
interface ICloseable
interface IJavaObject
interface IDisposable
interface IJavaPeerable
- 继承
- 属性
- 实现
注解
面向流的侦听套接字的异步通道。
异步服务器套接字通道是通过调用 #open open
此类的 方法创建的。 新创建的异步服务器套接字通道已打开,但尚未绑定。 它可以绑定到本地地址,并通过调用 #bind(SocketAddress,int) bind
方法将其配置为侦听连接。 绑定后, #accept(Object,CompletionHandler) accept
方法用于启动接受与通道套接字的连接。 尝试在未绑定的通道上调用 accept
方法将导致 NotYetBoundException
引发 。
此类型的通道可以安全地供多个并发线程使用,但最多可以有一个接受操作随时未完成。 如果线程在上一个接受操作完成之前启动接受操作, AcceptPendingException
则会引发 。
使用 #setOption(SocketOption,Object) setOption
方法配置套接字选项。 此类型的通道支持以下选项:<blockquote<>table class=“striped”><描述文字 style=“display:none”>Socket options</描述文字<>thead><tr><th scope=“col”>Option Name</th><th scope=“col”>Description</th></tr<>/thead<>tbody<>tr><th scope=“row”>java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF
</th><td> 套接字接收缓冲区 </td></tr>><<th scope=“row”<>java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR
/th<>td> 重用地址 </td<>/tr></tbody<>/table></blockquote> 其他 (实现特定) 选项可能也受支持。
<b>用法示例:</b>
final AsynchronousServerSocketChannel listener =
AsynchronousServerSocketChannel.open().bind(new InetSocketAddress(5000));
listener.accept(null, new CompletionHandler<AsynchronousSocketChannel,Void>() {
public void completed(AsynchronousSocketChannel ch, Void att) {
// accept the next connection
listener.accept(null, this);
// handle this connection
handle(ch);
}
public void failed(Throwable exc, Void att) {
...
}
});
在 1.7 中添加。
的 java.nio.channels.AsynchronousServerSocketChannel
Java 文档。
此页面的部分内容是基于 创建和共享的工作进行的修改,并根据 署名许可中所述的术语使用。
构造函数
AsynchronousServerSocketChannel(AsynchronousChannelProvider) |
初始化此类的新实例。 |
AsynchronousServerSocketChannel(IntPtr, JniHandleOwnership) |
面向流的侦听套接字的异步通道。 |
属性
Class |
返回此 |
Handle |
基础 Android 实例的句柄。 (继承自 Object) |
IsOpen |
面向流的侦听套接字的异步通道。 |
JniIdentityHashCode |
面向流的侦听套接字的异步通道。 (继承自 Object) |
JniPeerMembers |
面向流的侦听套接字的异步通道。 |
LocalAddress |
面向流的侦听套接字的异步通道。 |
PeerReference |
面向流的侦听套接字的异步通道。 (继承自 Object) |
ThresholdClass |
面向流的侦听套接字的异步通道。 |
ThresholdType |
面向流的侦听套接字的异步通道。 |
方法
Accept() |
接受连接。 |
Accept(Object, ICompletionHandler) |
接受连接。 |
Bind(SocketAddress) |
将通道的套接字绑定到本地地址,并将套接字配置为侦听连接。 |
Bind(SocketAddress, Int32) |
将通道的套接字绑定到本地地址,并将套接字配置为侦听连接。 |
Clone() |
创建并返回此对象的副本。 (继承自 Object) |
Close() |
关闭此通道。 |
Dispose() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
Dispose(Boolean) |
面向流的侦听套接字的异步通道。 (继承自 Object) |
Equals(Object) |
指示其他某个对象是否“等于”此对象。 (继承自 Object) |
GetHashCode() |
返回对象的哈希代码值。 (继承自 Object) |
JavaFinalize() |
当垃圾回收确定不再引用对象时,由对象上的垃圾回收器调用。 (继承自 Object) |
Notify() |
唤醒正在等待此对象的监视器的单个线程。 (继承自 Object) |
NotifyAll() |
唤醒正在等待此对象的监视器的所有线程。 (继承自 Object) |
Open() |
打开异步服务器套接字通道。 |
Open(AsynchronousChannelGroup) |
打开异步服务器套接字通道。 |
Provider() |
返回创建此通道的提供程序。 |
SetHandle(IntPtr, JniHandleOwnership) |
设置 Handle 属性。 (继承自 Object) |
SetOption(ISocketOption, Object) |
面向流的侦听套接字的异步通道。 |
ToArray<T>() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
ToString() |
返回对象的字符串表示形式。 (继承自 Object) |
UnregisterFromRuntime() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
Wait() |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>。<> (继承自 Object) |
Wait(Int64) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
Wait(Int64, Int32) |
导致当前线程等待,直到它被唤醒,通常是通过 em <通知/em> 或 <em>interrupted</em>,或直到经过一定数量的实时。<> (继承自 Object) |
显式接口实现
IJavaPeerable.Disposed() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.Finalized() |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.JniManagedPeerState |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
面向流的侦听套接字的异步通道。 (继承自 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
面向流的侦听套接字的异步通道。 (继承自 Object) |
扩展方法
JavaCast<TResult>(IJavaObject) |
执行 Android 运行时检查的类型转换。 |
JavaCast<TResult>(IJavaObject) |
面向流的侦听套接字的异步通道。 |
GetJniTypeName(IJavaPeerable) |
面向流的侦听套接字的异步通道。 |