Хорошие библиотеки user-space потоков для C++?

Стоит задача написания серьёзного сетевого ПО, где требуется поддержка большого числа одновременных запросов. Есть мысль упростить разработку/отладку/поддержку, заменив использование асинхронного boost::asio API на работу с preemptive-потоками в user-space. Чтобы их можно было плодить миллионами, как в Erlang.

Не подскажете хорошую библиотеку такой многопоточности с поддержкой широкого спектра системных вызовов (linux)? Erlang не предлагать.

Спасибо.
  • Вопрос задан
  • 2777 просмотров
Пригласить эксперта
Ответы на вопрос 3
Boost.Coroutine? Вроде бы и asio с ним дружит.
Ответ написан
@synacker
Если компиляторы поддерживают С++11, то можно и без сторонних библиотек.
Ответ написан
@Lol4t0
Не думаю, что вытесняющая многозадачность в userspace на нативном коде возможна. Если вы запустили какой-то код на исполнение, то вы уже его из userspace не сможете проконтролировать.

В том же erlang есть виртуальная машина, которая управляет исполнением.

Можете еще попробовать golang, если не нравится erlang. Хотя там вроде тоже легкие потоки построены на основе сопрограмм
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы