Легкие, портативные волокна C++, лицензия MIT

Я только что столкнулся с этим обсуждением и думал, что совместно использовал бы наш опыт с AccuRev.

Мы использовали Размеры SCM от Serena в течение приблизительно 8 лет. Два года назад у нас была основная проблема, интегрирующая нашу находящуюся в Индии Группу разработчиков с нашей британской Командой разработчиков. Было ясно, что мы не собирались удовлетворять наши потребности с существующей системой, и следовательно мы приступаем к оценке многих опций. Я обсуждаю все это в этой статье , Как Мы Интегрировали Нашу Офшорную Команду разработчиков.

Наш опыт использования AccuRev до сих пор был очень положителен.

  • легко установить и администрировать.
  • Пользователи могут начать очень очень быстро (особенно важный для команды разработчиков Индии)
  • , у Нас никогда не было проблемы со скоростью (на самом деле, это - один из основных плюсов для нас)
  • работы репликации как мечта
  • , я действительно соглашаюсь, что UI может быть немного неуклюжим (особенно клиент Unix). Я надеюсь, что будет лучше в последней версии, когда мы обновим к этому в следующем месяце.

, В целом, я сказал бы, что это было одним из лучших решений и покупок, которые мы сделали.

11
задан Jonas Byström 17 August 2009 в 00:12
поделиться

3 ответа

  1. Libtask : Лицензия MIT
  2. Libconcurrency : LGPL (немного жестче, чем MIT, но это функциональная библиотека!)

Оба написаны для C.

9
ответ дан 3 December 2019 в 06:22
поделиться

список реализаций C

для сверхлегких «потоков» см. Protothreads в конце статьи в Википедии.

3
ответ дан 3 December 2019 в 06:22
поделиться

Я на самом деле писал об этом в прошлом в блоге. Взглянуть! Надеюсь, он ответит на ваши вопросы. В нем я освещаю ряд библиотек, и меня особенно интересовали те, которые были полезны для системного программирования (асинхронный ввод-вывод).

Явно отсутствовал в этом покрытии Boost.Coroutine , который я буду обсуждать здесь. Boost.Coroutine концептуально можно считать «тяжеловесным» (с точки зрения семейства типов), но реализация довольно эффективна. Настоящая проблема в том, что Boost.Coroutine является неполным и (последнее, что я проверял) далек от завершения. Я потратил некоторое время, пытаясь поработать с автором его проблемы, не связанные с запуском, так как я действительно с нетерпением ждал возможности использовать его вместе с Boost.Asio (это была одна из основных задач Boost.Coroutine), но автор не у него было время, чтобы довести свою работу до стадии формальной проверки Boost.

Coroutine , о которой я расскажу здесь. Boost.Coroutine концептуально можно считать «тяжеловесным» (с точки зрения семейства типов), но реализация довольно эффективна. Настоящая проблема в том, что Boost.Coroutine неполный и (последний раз я проверял) далек от завершения. Я потратил некоторое время, пытаясь поработать с автором его проблемы, не связанные с запуском, так как я действительно с нетерпением ждал возможности использовать его вместе с Boost.Asio (это была одна из основных задач Boost.Coroutine), но автор не у него было время, чтобы довести свою работу до этапа формальной проверки Boost.

Coroutine , о которой я расскажу здесь. Boost.Coroutine концептуально можно считать «тяжеловесным» (с точки зрения семейства типов), но реализация довольно эффективна. Настоящая проблема в том, что Boost.Coroutine является неполным и (последнее, что я проверял) далек от завершения. Я потратил некоторое время, пытаясь поработать с автором его проблемы, не связанные с запуском, так как я действительно с нетерпением ждал возможности использовать его вместе с Boost.Asio (это была одна из основных задач Boost.Coroutine), но автор не у него было время, чтобы довести свою работу до этапа формальной проверки Boost.

и (последняя проверка) далека от завершения. Я потратил некоторое время, пытаясь поработать с автором его проблемы, не связанные с запуском, так как я действительно с нетерпением ждал возможности использовать его вместе с Boost.Asio (это была одна из основных задач Boost.Coroutine), но автор не у него было время, чтобы довести свою работу до стадии формальной проверки Boost.

и (последняя проверка) далека от завершения. Я потратил некоторое время, пытаясь поработать с автором его проблемы, не связанные с запуском, так как я действительно с нетерпением ждал возможности использовать его вместе с Boost.Asio (это была одна из основных задач Boost.Coroutine), но автор не у него было время, чтобы довести свою работу до стадии формальной проверки Boost.

5
ответ дан 3 December 2019 в 06:22
поделиться
Другие вопросы по тегам:

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