- Mailslot
-
Маилслот — один из механизмов межпроцессного взаимодействия, обеспечивающий однонаправленную передачу информации и позволяющий производить широковещательную рассылку сообщений по сети.
Реализация
Маилслот является клиент-серверным интерфейсом. Сервер маилслотов — процесс, который создаёт маилслот и может читать из него информацию. Маилслот существует до тех пор, пока не закрыты все его серверные дескрипторы. Если несколько серверных процессов внутри домена создадут маилслоты с одинаковым именем, то сообщения, адресованные этому маилслоту и посылаемые в домен, будут приниматься всеми создавшими его процессами. Клиентом маилслота может быть любой процесс, знающий его имя. Клиент записывает в маилслот сообщения для передачи их посредством дейтаграмм серверу. Один и тот же процесс может быть одновременно клиентом и сервером маилслотов.
Для создания маилслотов используется специальное пространство имён «\\.\mailslot\[путь]имя». Для записи информации в маилслот на локальном компьютере клиентом используется то же самое имя, что использовалось сервером для создания маилслота. Для записи информации в маилслот удалённого компьютера используется форма «\\имя компьютера\mailslot\[путь]имя». Для записи информации во все маилслоты домена указывается имя домена или звёздочка, обозначающая первичный домен системы: «\\имя домена\mailslot\[путь]имя» или «\\*\mailslot\[путь]имя».
Для создания маилслота сервером используется специальная функция Windows API CreateMailslot. Для создания дескриптора маилслота клиентом, записи информации клиентом, чтения её сервером и закрытия дескриптора используются функции для работы с файлами CreateFile, WriteFile, ReadFile, CloseHandle.
Некоторые программы, использующие маилслоты:
- MAILSLOT\Messngr — Microsoft NET SEND Protocol
- MAILSLOT\Browse — Microsoft Browser Protocol
- MAILSLOT\Alerter
- MAILSLOT\53cb31a0\UnimodemNotifyTSP
- MAILSLOT\HydraLsServer — Microsoft Terminal Services Licensing
- MAILSLOT\CheyenneDS — CA BrightStor Discovery Service
Ссылки
Межпроцессное взаимодействие в информатике Методы Файл · Memory-mapped file · Обмен сообщениями · Message queue and mailbox · Именованный канал · Anonymous pipe · Pipe · Семафор (критическая секция, мьютекс, фьютекс) · Shared memory · Сигнал · Сокет · Unix domain socket Избранные протоколы
и стандартыApple events · COM+ · CORBA · D-Bus · DCE · DCOP · DIPC · ICE · LINX · ONC RPC · POSIX (различные методы) · SOAP · Thrift · TIPC · XML-RPC Категория:- Межпроцессное взаимодействие
Wikimedia Foundation. 2010.