Есть ли способ выполнить очистку общих объектов синхронизации POSIX, особенно при сбое процесса? Разблокировка заблокированных семафоров POSIX является наиболее желательной вещью, но автоматически «собранные» очереди / область совместно используемой памяти также подойдут. Еще одна вещь, на которую стоит обратить внимание, - мы вообще не можем использовать обработчики сигналов из-за SIGKILL, который не может быть пойман.
Я вижу только одну альтернативу: некоторый внешний демон, который принимает подписки и запросы keep-alive, работает как сторожевой таймер, поэтому не имеет уведомлений о каком-либо объекте, который может закрыть / разблокировать объект в соответствии с зарегистрированной политикой.
Есть ли у кого-нибудь лучшая альтернатива / предложение? Раньше я никогда серьезно не работал с общими объектами POSIX (сокетов было достаточно для всех моих потребностей и, по моему мнению, гораздо полезнее), и я не нашел ни одной подходящей статьи. Я бы с радостью использовал здесь сокеты, но не могу по историческим причинам.