Это расширение моего предыдущего вопроса
Как работает режим блокировки в сокетах unix/linux?
То, что я собираю сейчас из Интернета, все процессы, вызывающие блокирующие вызовы, укладываются в спящий режим, пока планировщик не найдет причины разблокировать его. Причины могут варьироваться от пустого буфера до полного заполнения любого другого условия.
Но может ли это быть эффективным способом в реальном времени, можно сказать, жесткие/твердые приложения реального времени? Поскольку процесс не разблокирован, когда условие разблокирования выполняется верно, а когда планировщик предоставит ему его срез процессора, и условие разблокирования будет истинным.
Как будто вы хотите реагировать на решение, я не уверен, что это "спиновые блокировки" или "занятые ожидания" - это правильный способ сделать это, процессорные ломтики теряются впустую, а все системы должны быть неуязвимы или могут быть бедными -responsive.
Может кто-нибудь, пожалуйста, очистить эти противоречивые мысли.