История изменений
Исправление Egor_, (текущая версия) :
насчёт семафора вопрос
ну вот допустим, что выяснилось, что семафор повис по причине смерти процесса.
что дальше-то?
у нас несколько процессов, ожидающих этот семафор, и все хотят «вылечить» ситуацию, вызвав sem_post. но они не могут сделать это одновременно, это должен сделать только кто-то один. а как выбрать этого одного? получаем рекурсию: для реализации корректной работы первого семафора нам нужен ещё один семафор, который бы решал вопрос одновременого доступа к функции «лечения» первого семафора. ну, и у второго семафора будут возможны аналогичные проблемы, и для его лечения потребуется третий, ну вы поняли…
мы снова возвращаемся к вопросу «где выдают пистолет для линуксоидов?»
Исходная версия Egor_, :
насчёт семафора вопрос
ну вот допустим, что выяснилось, что семафор повис по причине смерти процесса.
что дальше-то?
у нас несколько процессов, ожидающих этот семафор, и все хотят «вылечить» ситуацию, вызвав sem_post. но они не могут сделать это одновременно, это должен сделать только кто-то один. а как выбрать этого одного? получаем рекурсию: для реализации корректной работы первого семафора нам нужен ещё один семафор, который бы решал вопрос одновременого доступа к функции «лечения» первого семафора. ну, и у второго семафора будут возможны аналогичные проблемы, и для его лечения потребуется третий, ну вы поняли…