Comments 8
Непонятно зачем
static void Init() {
static LibSSH2 instance;
}
в классе LibSSH2.
Скажите, почему выбор пал на boost.asio, а не на другую библиотеку для асинхронной работы? К примеру, libevent или libev, которые не требует нести здоровенный багаж boost, работают быстрее и ничуть не сложнее в использовании.
Ещё есть libuv она тоже хорошая
На самом деле, на старте проекта libevent рассматривался как альтернатива Asio. Победил последний и на это есть несколько причин:
- Asio с очень большой вероятностью станет частью стандарта. Для libevent это маловероятно.
- Мы совсем не против «багажа» Boost, который он с собой тащит. Многие мои коллеги пользуются их рейнджами, например
- Поскольку у нас есть свои библиотеки http_server и http_client, совместимость Asio и Beast нам тоже на руку (об этом я расскажу в будущей статье)
Спасибо за очень интересную статью. А не подскажите название той самой настольной книги «Тысяча и один способ выстрелить себе в ногу в C++»?
Sign up to leave a comment.
Асинхронный обмен данными с удалённым приложением через SSH