Spec-Zone.ru › Dart 2

dart:io

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

Future<RawServerSocket> bind(
  1. dynamic address,
  2. int port,
  3. {int backlog = 0,
  4. bool v6Only = false,
  5. bool shared = false}
)

Ожидает соединения по указанному адресу и порту.

После завершения возвращённого future серверный сокет привязан к указанным address и port и начинает ожидать соединения.

Значение address может быть строкой String или объектом InternetAddress. Если address — строка String, bind выполнит поиск с помощью InternetAddress.lookup и использует первое значение из списка. Чтобы ожидать соединения на адаптере loopback, который разрешает только входящие подключения с локального хоста, используйте значение InternetAddress.loopbackIPv4 или InternetAddress.loopbackIPv6. Чтобы разрешить входящие подключения из сети, используйте одно из значений InternetAddress.anyIPv4 или InternetAddress.anyIPv6, чтобы привязать сокет ко всем интерфейсам, либо IP-адрес конкретного интерфейса.

Если используется адрес IP версии 6 (IPv6), будут приниматься подключения как по IP версии 6 (IPv6), так и по версии 4 (IPv4). Чтобы ограничить подключения только версией 6 (IPv6), используйте v6Only, чтобы задать только версию 6.

Если port имеет значение 0, система выберет эфемерный порт. Фактически используемый порт можно получить с помощью геттера port.

Необязательный аргумент backlog можно использовать для указания очереди ожидающих подключений при настройке прослушивания в базовой ОС. Если backlog имеет значение 0 (значение по умолчанию), система выберет подходящее значение.

Необязательный аргумент shared указывает, могут ли дополнительные объекты RawServerSocket привязываться к той же комбинации address, port и v6Only. Если shared имеет значение true и к порту привязано больше RawServerSocket из этого изолята или других изолятов, входящие подключения будут распределяться между всеми привязанными RawServerSocket. Таким образом подключения можно распределять между несколькими изолятами.

Реализация

external static Future<RawServerSocket> bind(address, int port,
    {int backlog = 0, bool v6Only = false, bool shared = false});

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

Spec-Zone.ru

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