Spec-Zone.ru › Dart 2

dart:io

статический метод connect

Future<Socket> connect(
  1. dynamic host,
  2. int port,
  3. {dynamic sourceAddress,
  4. int sourcePort = 0,
  5. Duration? timeout}
)

Создаёт новое соединение сокета с указанным узлом и портом и возвращает Future, которое завершится объектом Socket после установления соединения либо ошибкой, если не удалось определить адрес узла или установить соединение.

host может быть строкой String или объектом InternetAddress. Если host — строка String, метод connect выполнит поиск с помощью InternetAddress.lookup и попробует подключиться ко всем возвращённым адресам InternetAddress, пока соединение не будет установлено. Если соединение установить не удалось, возвращается ошибка первой неудачной попытки подключения.

Аргумент sourceAddress можно использовать, чтобы указать локальный адрес для привязки при установлении соединения. sourceAddress может быть строкой String или объектом InternetAddress. Если передана строка String, она должна содержать числовой IP-адрес.

sourcePort задаёт локальный порт для привязки. Если sourcePort не указан или равен нулю, будет выбран порт.

Аргумент timeout используется для задания максимального времени ожидания установки соединения. Если timeout превышает системный тайм-аут, тайм-аут может наступить раньше, чем указано в timeout. При истечении времени ожидания возникает исключение SocketException, а все текущие попытки подключения к host отменяются.

Реализация

static Future<Socket> connect(host, int port,
    {sourceAddress, int sourcePort = 0, Duration? timeout}) {
  final IOOverrides? overrides = IOOverrides.current;
  if (overrides == null) {
    return Socket._connect(host, port,
        sourceAddress: sourceAddress,
        sourcePort: sourcePort,
        timeout: timeout);
  }
  return overrides.socketConnect(host, port,
      sourceAddress: sourceAddress, sourcePort: sourcePort, timeout: timeout);
}

© 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/connect.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API