AsynchronousServerSocketChannel Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Асинхронный канал для потоковых сокетов прослушивания.
[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 область="col">Option Name</th<>th область="col">Description</th<>/tr></thead><tbody><tr>th область="row"java.net.StandardSocketOptions#SO_RCVBUF SO_RCVBUF
></th><td> Размер буфера <приема сокета /td<>/tr<>tr<>th область="row">java.net.StandardSocketOptions#SO_REUSEADDR SO_REUSEADDR
</th<>td> Re-use address </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 для java.nio.channels.AsynchronousServerSocketChannel
.
Части этой страницы являются изменениями, основанными на работе, созданной и совместно используемой проектом Android и используемой в соответствии с условиями, Creative Commons 2.5 Attribution License.
Конструкторы
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() |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, из-за <уведомления><<> или>прерывания или прерывания.>< (Унаследовано от Object) |
Wait(Int64) |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени. (Унаследовано от Object) |
Wait(Int64, Int32) |
Вызывает ожидание текущего потока, пока он не пробудится, как правило, путем <уведомления><<> или>прерывания или прерывания<> или до истечения определенного количества реального времени. (Унаследовано от 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) |
Асинхронный канал для потоковых сокетов прослушивания. |