Абстрактный класс RawSocket
Класс RawSocket — это низкоуровневый интерфейс к сокету, предоставляющий доступ к сырым событиям, сигнализируемым системой. Это поток RawSocketEvent.
- Реализует
- Реализуется в
Статические методы
- connect(
host, int port, { sourceAddress }) → Future<RawSocket> -
Создаёт новое соединение сокета с хостом и портом и возвращает Future, которое завершится либо RawSocket после подключения, либо ошибкой, если поиск хоста или подключение не удалось.
Конструкторы
- RawSocket()
Свойства
- address → InternetAddress только для чтения
-
Возвращает
InternetAddressиспользуемый для подключения этого сокета. - port → int только для чтения
-
Возвращает порт, используемый этим сокетом.
- readEventsEnabled → bool чтение/запись
-
Устанавливает или получает, должен ли RawSocket прослушивать события RawSocketEvent.READ. Значение по умолчанию —
true. - remoteAddress → InternetAddress только для чтения
-
Возвращает удалённый
InternetAddress, подключенный к этому сокету. - remotePort → int только для чтения
-
Возвращает удалённый порт, подключенный к этому сокету.
- writeEventsEnabled → bool чтение/запись
-
Устанавливает или получает, должен ли RawSocket прослушивать события RawSocketEvent.WRITE. Значение по умолчанию —
true. Это прослушиватель, работающий по принципу «один раз». Для получения другого события WRITE необходимо установить writeEventsEnabled в true снова. - first → Future<RawSocketEvent> только для чтения, унаследованно
-
Возвращает первый элемент потока.
- hashCode → int только для чтения, унаследованно
-
Код хэша для этого объекта.
- isBroadcast → bool только для чтения, унаследованно
-
Является ли этот поток потоком широковещательной передачи.
- isEmpty → Future<bool> только для чтения, унаследованно
-
Отчёт о том, содержит ли этот поток какие-либо элементы.
- last → Future<RawSocketEvent> только для чтения, унаследованно
-
Возвращает последний элемент потока.
- length → Future<int> только для чтения, унаследованно
-
Подсчёт элементов в потоке.
- runtimeType → Type только для чтения, унаследованно
-
Представление типа объекта во время выполнения.
- single → Future<RawSocketEvent> только для чтения, унаследованно
-
Возвращает единственный элемент.
Операторы
- operator ==(
other) → bool унаследованно -
Оператор равенства.
Методы
- available(
) → int -
Возвращает количество полученных и не прочитанных байтов в сокете, которые можно прочитать.
- close(
) → Future<RawSocket> -
Закрывает сокет. Возвращает Future, который завершается со значением
thisпосле того, как базовое соединение будет полностью разрушено. - read(
[int len ]) → List<int> -
Читает до
lenбайтов из сокета. Эта функция неблокирующая и вернет данные только если они доступны. Количество прочитанных байтов может быть меньшеlen, если доступно меньше байтов для немедленного чтения. Если данные недоступны, возвращаетсяnull. - setOption(
SocketOption option, bool enabled) → bool -
Используйте setOption для настройки RawSocket. См. SocketOption для доступных опций.
- shutdown(
SocketDirection direction) → void -
Закрывает сокет в указанном
direction. Вызов shutdown никогда не выбросит исключение, и вызов его несколько раз поддерживается. Вызов shutdown с SocketDirection.BOTH или SocketDirection.RECEIVE может привести к событию RawSocketEvent.READ_CLOSED. - write(
List<int> buffer, [ int offset, int count ]) → int -
Записывает до
countбайтов из буфера, начиная сoffsetсмещения буфера, в сокет. Возвращает количество успешно записанных байтов. Эта функция неблокирующая и будет записывать данные только если в сокете есть место в буфере. - any(
bool test(T element)) → Future<bool> inherited -
Проверяет, принимает ли
testлюбой элемент, предоставляемый этим потоком. - asBroadcastStream(
{void onListen(StreamSubscription<T> subscription), void onCancel(StreamSubscription<T> subscription) }) → Stream<RawSocketEvent> inherited -
Возвращает поток с множественными подписками, который генерирует те же события, что и этот.
- asyncExpand<E>(
Stream<E> convert(T event)) → Stream<E> inherited -
Создаёт новый поток с событиями потока на основе исходного события.
- asyncMap<E>(
dynamic convert(T event)) → Stream<E> inherited -
Создаёт новый поток, асинхронно преобразующий каждое событие данных этого потока в новое событие.
- contains(
Object needle) → Future<bool> inherited -
Проверяет, присутствует ли
needleв элементах, предоставляемых этим потоком. - distinct(
[bool equals(T previous, T next) ]) → Stream<RawSocketEvent> inherited -
Пропускает события данных, если они равны предыдущему событию данных.
- drain<E>(
[E futureValue ]) → Future<E> inherited -
Отбрасывает все данные в потоке, но сигнализирует о завершении или возникновении ошибки.
- elementAt(
int index) → Future<RawSocketEvent> inherited -
Возвращает значение
index-го события данных этого потока. - every(
bool test(T element)) → Future<bool> inherited -
Проверяет, принимает ли
testвсе элементы, предоставляемые этим потоком. - expand<S>(
Iterable<S> convert(T value)) → Stream<S> inherited -
Создаёт новый поток из этого потока, преобразующий каждый элемент в ноль или более событий.
- firstWhere(
bool test(T element), { Object defaultValue() }) → Future inherited -
Находит первый элемент этого потока, соответствующий
test. - fold<S>(
S initialValue, S combine(S previous, T element)) → Future<S> inherited -
Сводит последовательность значений, многократно применяя
combine. - forEach(
void action(T element)) → Future inherited -
Выполняет
actionдля каждого события данных потока. - handleError(
Function onError, { bool test(error) }) → Stream<RawSocketEvent> inherited -
Создаёт обёртку потока, перехватывающую некоторые ошибки из этого потока.
- join(
[String separator = "" ]) → Future<String> inherited -
Собирает строку из строковых представлений событий данных.
- lastWhere(
bool test(T element), { Object defaultValue() }) → Future inherited -
Находит последний элемент в этом потоке, соответствующий
test. - listen(
void onData(T event), { Function onError, void onDone(), bool cancelOnError }) → StreamSubscription<RawSocketEvent> inherited -
Добавляет подписку к этому потоку.
- map<S>(
S convert(T event)) → Stream<S> inherited -
Создаёт новый поток, преобразующий каждый элемент этого потока в новое значение с помощью функции
convert. - noSuchMethod(
Invocation invocation) → dynamic inherited -
Вызывается при обращении к несуществующему методу или свойству.
- pipe(
StreamConsumer<RawSocketEvent> streamConsumer) → Future inherited -
Перенаправляет события этого потока в
streamConsumer. - reduce(
RawSocketEvent combine(T previous, T element)) → Future<RawSocketEvent> inherited -
Сводит последовательность значений, многократно применяя
combine. - singleWhere(
bool test(T element)) → Future<RawSocketEvent> inherited -
Находит единственный элемент в этом потоке, соответствующий
test. - skip(
int count) → Stream<RawSocketEvent> inherited -
Пропускает первые
countсобытия данных из этого потока.
- skipWhile(
bool test(T element)) → Stream<RawSocketEvent> inherited -
Пропускает события данных из этого потока, пока они соответствуют
test. - take(
int count) → Stream<RawSocketEvent> inherited -
Предоставляет не более первых
countсобытий данных из этого потока. - takeWhile(
bool test(T element)) → Stream<RawSocketEvent> inherited -
Пересылает события данных, пока
testвыполняется успешно. - timeout(
Duration timeLimit, { void onTimeout(EventSink<T> sink) }) → Stream<RawSocketEvent> inherited -
Создаёт новый поток с теми же событиями, что и этот поток.
- toList(
) → Future<List<RawSocketEvent>> inherited -
Собирает данные этого потока в List.
- toSet(
) → Future<Set<RawSocketEvent>> inherited -
Собирает данные этого потока в Set.
- toString(
) → String inherited -
Возвращает строковое представление этого объекта.
- transform<S>(
StreamTransformer<RawSocketEvent, S> streamTransformer) → Stream<S> inherited -
Цепляет этот поток как вход для предоставленного StreamTransformer.
- where(
bool test(T event)) → Stream<RawSocketEvent> inherited -
Создаёт новый поток из этого потока, который отбрасывает некоторые события данных.
© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-io/RawSocket-class.html