Класс RawDatagramSocket
Небуферизованный интерфейс сокета UDP.
Сокет необработанных датаграмм передаёт датаграммы такими же блоками, как и базовая операционная система. Это поток событий RawSocketEvent.
Обратите внимание: событие RawSocketEvent.readClosed никогда не будет получено, поскольку сокет UDP не может быть закрыт удалённым узлом.
Это не то же самое, что необработанный сокет POSIX.
- Наследование
-
- Object
-
Stream<
RawSocketEvent> - RawDatagramSocket
Конструкторы
- RawDatagramSocket()
Свойства
- address → InternetAddress только для чтения
- Адрес, используемый этим сокетом.
- broadcastEnabled ↔ bool чтение / запись
- Включена ли широковещательная передача IPv4.
- first → Future<
RawSocketEvent> только для чтения, унаследовано - Первый элемент этого потока.
- hashCode → int только для чтения, унаследовано
- Хеш-код этого объекта.
- isBroadcast → bool только для чтения, унаследовано
- Является ли этот поток широковещательным.
- isEmpty → Future<
bool> только для чтения, унаследовано - Содержит ли этот поток какие-либо элементы.
- last → Future<
RawSocketEvent> только для чтения, унаследовано - Последний элемент этого потока.
- length → Future<
int> только для чтения, унаследовано - Количество элементов в этом потоке.
- multicastHops ↔ int чтение / запись
- Максимальное количество сетевых переходов для пакетов многоадресной рассылки, отправляемых этим сокетом.
- multicastInterface ↔ NetworkInterface? чтение / запись
- Сетевой интерфейс, используемый для исходящих пакетов многоадресной рассылки.
- multicastLoopback ↔ bool чтение / запись
- Возвращается ли трафик многоадресной рассылки на хост.
- port → int только для чтения
- Порт, используемый этим сокетом.
- readEventsEnabled ↔ bool чтение / запись
- Должен ли RawDatagramSocket ожидать события RawSocketEvent.read.
- runtimeType → Type только для чтения, унаследовано
- Представление типа объекта во время выполнения.
- single → Future<
RawSocketEvent> только для чтения, унаследовано - Единственный элемент этого потока.
- writeEventsEnabled ↔ bool чтение / запись
- Должен ли RawDatagramSocket ожидать события RawSocketEvent.write.
Методы
- any(
bool test(RawSocketEvent element)) → Future< bool> унаследовано - Проверяет, удовлетворяет ли
testхотя бы один элемент этого потока. - asBroadcastStream(
{void onListen(StreamSubscription< RawSocketEvent> subscription)?, void onCancel(StreamSubscription< RawSocketEvent> subscription)?}) → Stream< RawSocketEvent> унаследовано - Возвращает поток с несколькими подписками, который выдаёт те же события, что и этот поток.
- asyncExpand<
E>( Stream< E>? convert(RawSocketEvent event)) → Stream< E> унаследовано - Преобразует каждый элемент в последовательность асинхронных событий.
- asyncMap<
E>( FutureOr< E> convert(RawSocketEvent event)) → Stream< E> унаследовано - Создаёт новый поток, в котором каждое событие данных этого потока асинхронно преобразуется в новое событие.
- cast<
R>( ) → Stream< R> унаследовано - Адаптирует этот поток к типу
Stream<R>. - close(
) → void - Закрывает сокет датаграмм.
- contains(
Object? needle) → Future< bool> унаследовано - Возвращает, встречается ли
needleсреди элементов этого потока. - distinct(
[bool equals(RawSocketEvent previous, RawSocketEvent next)?]) → Stream< RawSocketEvent> унаследовано - Пропускает события данных, равные предыдущему событию данных.
- drain<
E>( [E? futureValue]) → Future< E> унаследовано - Отбрасывает все данные этого потока, но сообщает о его завершении или возникновении ошибки.
- elementAt(
int index) → Future< RawSocketEvent> унаследовано - Возвращает значение события данных этого потока с индексом
index. - every(
bool test(RawSocketEvent element)) → Future< bool> унаследовано - Проверяет, удовлетворяют ли
testвсе элементы этого потока. - expand<
S>( Iterable< S> convert(RawSocketEvent element)) → Stream< S> унаследовано - Преобразует каждый элемент этого потока в последовательность элементов.
- firstWhere(
bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future< RawSocketEvent> унаследовано - Находит первый элемент этого потока, соответствующий
test. - fold<
S>( S initialValue, S combine(S previous, RawSocketEvent element)) → Future< S> унаследовано - Объединяет последовательность значений, многократно применяя
combine. - forEach(
void action(RawSocketEvent element)) → Future унаследовано - Выполняет
actionдля каждого элемента этого потока. - getRawOption(
RawSocketOption option) → Uint8List - Считывает низкоуровневую информацию о RawSocket.
- handleError(
Function onError, {bool test(dynamic error)?}) → Stream< RawSocketEvent> унаследовано - Создаёт поток-обёртку, перехватывающий некоторые ошибки этого потока.
- join(
[String separator = ""]) → Future< String> унаследовано - Объединяет строковые представления элементов в одну строку.
- joinMulticast(
InternetAddress group, [NetworkInterface? interface]) → void - Присоединяется к группе многоадресной рассылки.
- lastWhere(
bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future< RawSocketEvent> унаследовано - Находит последний элемент этого потока, соответствующий
test. - leaveMulticast(
InternetAddress group, [NetworkInterface? interface]) → void - Покидает группу многоадресной рассылки.
- listen(
void onData(RawSocketEvent event)?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription< RawSocketEvent> унаследовано - Добавляет подписку на этот поток.
- map<
S>( S convert(RawSocketEvent event)) → Stream< S> унаследовано - Преобразует каждый элемент этого потока в новое событие потока.
- noSuchMethod(
Invocation invocation) → dynamic унаследовано - Вызывается при обращении к несуществующему методу или свойству.
- pipe(
StreamConsumer< RawSocketEvent> streamConsumer) → Future унаследовано - Передаёт события этого потока в
streamConsumer. - receive(
) → Datagram? - Получает датаграмму.
- reduce(
RawSocketEvent combine(RawSocketEvent previous, RawSocketEvent element)) → Future< RawSocketEvent> унаследовано - Объединяет последовательность значений, многократно применяя
combine. - send(
List< int> buffer, InternetAddress address, int port) → int - Отправляет датаграмму.
- setRawOption(
RawSocketOption option) → void - Настраивает RawSocket.
- singleWhere(
bool test(RawSocketEvent element), {RawSocketEvent orElse()?}) → Future< RawSocketEvent> унаследовано - Находит единственный элемент этого потока, соответствующий
test. - skip(
int count) → Stream< RawSocketEvent> унаследовано - Пропускает первые
countсобытий данных этого потока. - skipWhile(
bool test(RawSocketEvent element)) → Stream< RawSocketEvent> унаследовано - Пропускает события данных этого потока, пока они соответствуют
test. - take(
int count) → Stream< RawSocketEvent> унаследовано - Выдаёт не более первых
countсобытий данных этого потока. - takeWhile(
bool test(RawSocketEvent element)) → Stream< RawSocketEvent> унаследовано - Пересылает события данных, пока
testуспешно. - timeout(
Duration timeLimit, {void onTimeout(EventSink< RawSocketEvent> sink)?}) → Stream< RawSocketEvent> унаследовано - Создаёт новый поток с теми же событиями, что и у этого потока.
- toList(
) → Future< List< RawSocketEvent>> унаследовано - Собирает все элементы этого потока в
List. - toSet(
) → Future< Set< RawSocketEvent>> унаследовано - Собирает данные этого потока в
Set. - toString(
) → String унаследовано - Строковое представление этого объекта.
- transform<
S>( StreamTransformer< RawSocketEvent, S> streamTransformer) → Stream< S> унаследовано - Применяет
streamTransformerк этому потоку. - where(
bool test(RawSocketEvent event)) → Stream< RawSocketEvent> унаследовано - Создаёт на основе этого потока новый поток, отбрасывающий некоторые элементы.
Операторы
- operator ==(
Object other) → bool унаследовано - Оператор равенства.
Статические методы
- bind(
dynamic host, int port, {bool reuseAddress = true, bool reusePort = false, int ttl = 1}) → Future< RawDatagramSocket> - Привязывает сокет к указанным
hostиport.
© 2012 the Dart project authors
Licensed under the BSD 3-Clause "New" or "Revised" License.
https://api.dart.dev/stable/2.19.6/dart-io/RawDatagramSocket-class.html