LINUX.ORG.RU

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

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

каждый сокет привязан к своему треду

обычно в asio асинхронные операции на сокете синхронизируются через свой объект синхронизации это strand (он гарантирует порядок операций). Для каждого сокета свой отдельный strand, и проблем нет.

конечно все зависит от реализации в crow…

сокет привязан к своему треду по round robin модели и все callback для одного подключения будут вызваны на одном и том же треде

asio это больше это про асинхронность с очередью задач, к какой нитке что привязано лучше не думать, там вообще можно запустить контекст с одним concurrency_hint.

Исправление anonymous2, :

каждый сокет привязан к своему треду

обычно в asio асинхронные операции на сокете синхронизируются через свой объект синхронизации это strand (он гарантирует порядок операций). Для каждого сокета свой отдельный strand, и проблем нет.

конечно все зависит от реализации в crow…

сокет привязан к своему треду по round robin модели и все callback для одного подключения будут вызваны на одном и том же треде

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

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

каждый сокет привязан к своему треду

обычно в asio асинхронные операции на сокете синхронизируются через свой объект синхронизации это strand (он гарантирует порядок операций). Для каждого сокета свой отдельный strand, и проблем нет.

конечно все зависит от реализации в crow…