Сеть серверов
Сервер создается вызовом make-network-process (см. Процессы сети) с :server t. Сервер будет прослушивать запросы на подключение от клиентов. При принятии запроса на подключение клиента, это создает новое сетевое подключение, само по себе объект процесса, со следующими параметрами:
- Имя процесса подключения формируется путем конкатенации имени процесса сервера name и идентификационной строки клиента. Идентификационная строка клиента для подключения IPv4 выглядит так: ‘<a.b.c.d:p>’, что представляет собой адрес и номер порта. В противном случае, это уникальное число в квадратных скобках, как в ‘<nnn>’. Число уникально для каждого подключения в сеансе Emacs.
- Если у сервера есть фильтр, отличный от по умолчанию, процесс подключения не получает отдельную буферную область; в противном случае Emacs создает новый буфер для этой цели. Имя буфера — это имя буфера сервера или имя процесса, конкатенированное с идентификационной строкой клиента.
Значение буферной области процесса сервера никогда не используется напрямую, но функция регистрации может извлечь его и использовать для регистрации подключений, вставляя текст туда.
- Тип связи, фильтр процесса и стража наследуются от сервера. Сервер никогда не использует свой фильтр и стража напрямую; их единственная цель — инициализировать подключения, сделанные к серверу.
- Контактная информация процесса подключения устанавливается в соответствии с информацией об адресации клиента (обычно IP-адрес и номер порта). Эта информация ассоциирована с ключевыми словами
process-contact:host,:service,:remote. - Местный адрес подключения настраивается в соответствии с номером порта, используемым для подключения.
- Список свойств (plist) процесса клиента инициализируется из списка свойств (plist) сервера.
Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Network-Servers.html