Класс Socket
TCP-соединение между двумя сокетами.
Соединение сокетов связывает локальный сокет с удалённым сокетом. Данные в виде Uint8List принимаются локальным сокетом, становятся доступными через интерфейс Stream этого класса и могут отправляться на удалённый сокет через интерфейс IOSink этого класса.
- Реализуемые типы
- Реализующие классы
Конструкторы
- Socket()
Свойства
- address → InternetAddress только для чтения
- InternetAddress, используемый для подключения этого сокета.
- done → Future только для чтенияпереопределено
- Будущий объект, который будет завершён при закрытии потребителем или возникновении ошибки.
- encoding ↔ Encoding чтение / записьунаследовано
- Encoding, используемый при записи строк.
- first → Future<
Uint8List> только для чтенияунаследовано - Первый элемент этого потока.
- hashCode → int только для чтенияунаследовано
- Хеш-код этого объекта.
- isBroadcast → bool только для чтенияунаследовано
- Является ли этот поток широковещательным.
- isEmpty → Future<
bool> только для чтенияунаследовано - Содержит ли этот поток какие-либо элементы.
- last → Future<
Uint8List> только для чтенияунаследовано - Последний элемент этого потока.
- length → Future<
int> только для чтенияунаследовано - Количество элементов в этом потоке.
- port → int только для чтения
- Порт, используемый этим сокетом.
- remoteAddress → InternetAddress только для чтения
- Удалённый InternetAddress, к которому подключён этот сокет.
- remotePort → int только для чтения
- Удалённый порт, к которому подключён этот сокет.
- runtimeType → Type только для чтенияунаследовано
- Представление типа объекта во время выполнения.
- single → Future<
Uint8List> только для чтенияунаследовано - Единственный элемент этого потока.
Методы
- add(
List< int> data) → void унаследовано - Добавляет байты
dataцелевому потребителю, игнорируя кодировку. - addError(
Object error, [StackTrace? stackTrace]) → void унаследовано - Передаёт ошибку целевому потребителю в виде события ошибки.
- addStream(
Stream< List< int>> stream) → Future унаследовано - Добавляет все элементы заданного
stream. - any(
bool test(Uint8List element)) → Future< bool> унаследовано - Проверяет, принимает ли
testхотя бы один элемент, предоставленный этим потоком. - asBroadcastStream(
{void onListen(StreamSubscription< Uint8List> subscription)?, void onCancel(StreamSubscription< Uint8List> subscription)?}) → Stream< Uint8List> унаследовано - Возвращает поток с несколькими подписками, который создаёт те же события, что и этот поток.
- asyncExpand<
E>( Stream< E>? convert(Uint8List event)) → Stream< E> унаследовано - Преобразует каждый элемент в последовательность асинхронных событий.
- asyncMap<
E>( FutureOr< E> convert(Uint8List event)) → Stream< E> унаследовано - Создаёт новый поток, в котором каждое событие данных этого потока асинхронно преобразуется в новое событие.
- cast<
R>( ) → Stream< R> унаследовано - Адаптирует этот поток, чтобы он стал
Stream<R>. - close(
) → Future переопределено - Закрывает целевой потребитель.
- contains(
Object? needle) → Future< bool> унаследовано - Возвращает признак того, что
needleвстречается среди элементов, предоставленных этим потоком. - destroy(
) → void - Уничтожает сокет в обоих направлениях.
- distinct(
[bool equals(Uint8List previous, Uint8List next)?]) → Stream< Uint8List> унаследовано - Пропускает события данных, если они совпадают с предыдущим событием данных.
- drain<
E>( [E? futureValue]) → Future< E> унаследовано - Отбрасывает все данные этого потока, но сигнализирует о его завершении или возникновении ошибки.
- elementAt(
int index) → Future< Uint8List> унаследовано - Возвращает значение
index-го события данных этого потока. - every(
bool test(Uint8List element)) → Future< bool> унаследовано - Проверяет, принимает ли
testвсе элементы, предоставленные этим потоком. - expand<
S>( Iterable< S> convert(Uint8List element)) → Stream< S> унаследовано - Преобразует каждый элемент этого потока в последовательность элементов.
- firstWhere(
bool test(Uint8List element), {Uint8List orElse()?}) → Future< Uint8List> унаследовано - Находит первый элемент этого потока, соответствующий
test. - flush(
) → Future унаследовано - Возвращает Future, который завершается, когда все буферизованные данные приняты базовым StreamConsumer.
- fold<
S>( S initialValue, S combine(S previous, Uint8List element)) → Future< S> унаследовано - Объединяет последовательность значений, многократно применяя
combine. - forEach(
void action(Uint8List element)) → Future унаследовано - Выполняет
actionдля каждого элемента этого потока. - getRawOption(
RawSocketOption option) → Uint8List - Считывает низкоуровневую информацию о RawSocket.
- handleError(
Function onError, {bool test(dynamic error)?}) → Stream< Uint8List> унаследовано - Создаёт поток-обёртку, перехватывающий некоторые ошибки этого потока.
- join(
[String separator = ""]) → Future< String> унаследовано - Объединяет строковые представления элементов в одну строку.
- lastWhere(
bool test(Uint8List element), {Uint8List orElse()?}) → Future< Uint8List> унаследовано - Находит последний элемент этого потока, соответствующий
test. - listen(
void onData(Uint8List event)?, {Function? onError, void onDone()?, bool? cancelOnError}) → StreamSubscription< Uint8List> унаследовано - Добавляет подписку на этот поток.
- map<
S>( S convert(Uint8List event)) → Stream< S> унаследовано - Преобразует каждый элемент этого потока в новое событие потока.
- noSuchMethod(
Invocation invocation) → dynamic унаследовано - Вызывается при обращении к несуществующему методу или свойству.
- pipe(
StreamConsumer< Uint8List> streamConsumer) → Future унаследовано - Передаёт события этого потока в
streamConsumer. - reduce(
Uint8List combine(Uint8List previous, Uint8List element)) → Future< Uint8List> унаследовано - Объединяет последовательность значений, многократно применяя
combine. - setOption(
SocketOption option, bool enabled) → bool - Настраивает RawSocket.
- setRawOption(
RawSocketOption option) → void - Настраивает RawSocket.
- singleWhere(
bool test(Uint8List element), {Uint8List orElse()?}) → Future< Uint8List> унаследовано - Находит единственный элемент этого потока, соответствующий
test. - skip(
int count) → Stream< Uint8List> унаследовано - Пропускает первые
countсобытий данных этого потока. - skipWhile(
bool test(Uint8List element)) → Stream< Uint8List> унаследовано - Пропускает события данных этого потока, пока они соответствуют
test. - take(
int count) → Stream< Uint8List> унаследовано - Предоставляет не более первых
countсобытий данных этого потока. - takeWhile(
bool test(Uint8List element)) → Stream< Uint8List> унаследовано - Пересылает события данных, пока
testзавершается успешно. - timeout(
Duration timeLimit, {void onTimeout(EventSink< Uint8List> sink)?}) → Stream< Uint8List> унаследовано - Создаёт новый поток с теми же событиями, что и этот поток.
- toList(
) → Future< List< Uint8List>> унаследовано - Собирает все элементы этого потока в
List. - toSet(
) → Future< Set< Uint8List>> унаследовано - Собирает данные этого потока в
Set. - toString(
) → String унаследовано - Строковое представление этого объекта.
- transform<
S>( StreamTransformer< Uint8List, S> streamTransformer) → Stream< S> унаследовано - Применяет
streamTransformerк этому потоку. - where(
bool test(Uint8List event)) → Stream< Uint8List> унаследовано - Создаёт из этого потока новый поток, отбрасывающий некоторые элементы.
- write(
Object? object) → void унаследовано - Преобразует
objectв строку, вызывая Object.toString, и добавляет кодировку результата целевому потребителю с помощью add. - writeAll(
Iterable objects, [String separator = ""]) → void унаследовано - Перебирает заданную
objectsи последовательно выполняет для её элементов write. - writeCharCode(
int charCode) → void унаследовано - Записывает символ с кодом
charCode. - writeln(
[Object? object = ""]) → void унаследовано - Преобразует
objectв строку, вызывая Object.toString, и записывает результат вthis, добавляя в конце символ новой строки.
Операторы
- operator ==(
Object other) → bool унаследовано - Оператор равенства.
Статические методы
- connect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0, Duration? timeout}) → Future< Socket> - Создаёт новое соединение сокета с указанными узлом и портом и возвращает Future, который завершается объектом
Socketпосле установления соединения либо ошибкой, если не удалось определить адрес узла или установить соединение. - startConnect(
dynamic host, int port, {dynamic sourceAddress, int sourcePort = 0}) → Future< ConnectionTask< Socket>> - Аналогичен connect, но возвращает Future, который завершается объектом
ConnectionTask; его можно отменить, если Socket больше не нужен.
© 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/Socket-class.html