| Предыдущий | Следующий |
| EMSGSIZE | ELOOP |
EIDRM
Идентификатор был действителен только пока существовал объект IPC
EIDRM относится к семантике времени жизни в стиле System V IPC. Он означает, что операция встретила идентификатор, базовый объект которого был удалён. Важно различать изначально неверный идентификатор и идентификатор, ставший недействительным потому, что другой участник уничтожил очередь, набор семафоров или объект разделяемой памяти.
Не продолжайте повторять тот же числовой идентификатор. Получите конечную точку IPC заново через документированный протокол обнаружения или создания приложения и решите, нужно ли пересоздать, отбросить или отметить прерванной незавершённую работу.
Полезные сведения
- Тип объекта IPC, идентификатор, создатель или владелец и API, сообщивший ошибку.
- События удаления и порядок завершения работы удалённой стороны или супервизора, владеющего объектом.
- Может ли вызывающий код безопасно пересоздать объект без гонки с другим экземпляром.
Ссылки
- Apple XNU: определения errno Darwin
- POSIX: семантика ошибок msgrcv()
- POSIX: msgctl() и удаление объектов IPC
Нужно найти другой код? Найти другой код состояния или ошибки.