Ответ 1
- Libtask: Лицензия MIT
- Libconcurrency: LGPL (немного более жесткий, чем MIT, но это функциональная библиотека!)
Оба записываются для C.
Я хотел бы получить легкий, портативный волоконный lib с лицензией MIT (или более слабый). Boost.Coroutine не квалифицируется (нелегко), не имеет портативной библиотеки Coroutine и Kent С++ CSP (оба GPL).
Изменить: не могли бы вы помочь мне найти его?:)
Оба записываются для C.
Я на самом деле в блоге об этом в прошлом. Взгляни! Надеюсь, это ответит на ваши вопросы. В нем я рассказываю о нескольких библиотеках, и меня особенно интересовали те, которые были полезны для системного программирования (асинхронный IO).
Заметно отсутствующий из этого покрытия Boost.Coroutine, о котором я расскажу здесь. Boost.Coroutine можно рассматривать как "тяжеловесный" концептуально (с точки зрения его семейства типов), но реализация довольно эффективна. Реальная проблема заключается в том, что Boost.Coroutine является неполным, и (последний раз я проверил) далеко не полный. Я потратил некоторое время на то, чтобы попытаться работать с автором по его не стартерным проблемам, так как я действительно с нетерпением ждал его использования в сочетании с Boost.Asio(это была одна из основных целей Boost.Coroutine), но автор не имел время, чтобы занять его работу на официальном этапе обзора Boost.
для сверхлегких "нитей" взгляните на Protothreads в нижней части статьи wikipedia.
Теперь у вас есть две лучшие опции с лицензией Boost: