LINUX.ORG.RU

История изменений

Исправление arturpub, (текущая версия) :

У тебя все вопросы поставлены так, что либо однозначно не ответишь, либо похоже на поток сознания.

Если по-отдельности смотреть, то асинхронка это когда ты общаешься через очереди событий (с любой полезной нагрузкой), а блокирование, как ты его употребляешь, это особенность некоторых вызовов ядра, чтобы не мутить асинхронку по дефолту. В случае сокет-дескриптора очереди находятся в ядре и сообщения ты получаешь/передаешь через замочную скважину полл-селекта и рид-врайт.

А если у тебя например два потока асинхронно общаются, то две атомарные очереди у тебя будут явно присутствовать, и ты будешь лочить их, когда надо сунуть или вынуть элемент с к-л стороны. При этом один поток может насувать элементов другому и сесть прямо тут ждать, пока он все довыполнит, чтобы синхронизироваться. Это будет аналог блокирующего вызова в ядро.

Исходная версия arturpub, :

У тебя все вопросы поставлены так, что либо однозначно не ответишь, либо похоже на поток сознания.

Если по-отдельности смотреть, то асинхронка это когда ты общаешься через очереди событий (с любой полезной нагрузкой), а блокирование, как ты его употребляешь, это особенность некоторых вызовов ядра, чтобы не мутить асинхронку по дефолту. В случае сокет-дескриптора очереди находятся в ядре и сообщения ты получаешь/передаешь через замочную скважину полл-селекта и рид-врайт.

А если у тебя например два потока асинхронно общаются, то две атомарный очереди у тебя будут явно присутствовать, и ты будешь лочить их, когда надо сунуть или вынуть элемент с к-л стороны. При этом один поток может насувать элементов другому и сесть прямо тут ждать, пока он все довыполнит, чтобы синхронизироваться. Это будет аналог блокирующего вызова в ядро.