Когда использовать асинхронные операции в ASIO - PullRequest
4 голосов
/ 04 апреля 2009

Когда я должен использовать асинхронные операции в boost :: asio вместо синхронных операций в отдельных потоках?

Ответы [ 2 ]

5 голосов
/ 04 апреля 2009

Помогает ли раздел Обоснование ?

Большинство программ каким-либо образом взаимодействуют с внешним миром, будь то через файл, сеть, последовательный кабель или консоль. Иногда, как в случае с сетью, выполнение отдельных операций ввода-вывода может занять много времени. Это создает особые проблемы для разработки приложений.

Boost.Asio предоставляет инструменты для управления этими длительными операциями, не требуя от программ использования моделей параллелизма, основанных на потоках и явной блокировке.

3 голосов
/ 04 апреля 2009

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

Надеюсь, это поможет.

...