现有的线程池C实现

Mat*_*ard 36 c multithreading open-source pthreads threadpool

您建议在C中使用pthreads线程池进行哪些开源实现?

如果此实现是:

  • 轻量级:glib,APR,NSPR和其他产品都有很大的买入,我宁愿只有2个文件(标题和实现).
  • 在多个平台上测试(Linux,BSD,Mac OS X等).
  • 仍然保持.

Mat*_*ard 24

我致力于制作我能够使用的东西,并且我已经在github上发布了它:它是难以想象的称为线程池.


R..*_*R.. 9

如果你的目标是轻量级,那么你想要的最后一件事就是预先编写的,超级通用的,基于高级抽象的实现.自己实现一个适合你的特定任务的线程池是相当简单的,但你也可能会质疑你是否真的需要一个线程池,或者你是否可以根据需要创建和销毁线程.

如果不了解有关您的应用程序的更多详细信息,我无法提供更具体的建议.但您可能会发现有用的工具是:

  • 条件变量
  • 信号灯
  • 由互斥锁保护的作业队列
  • POSIX消息队列

  • 这是一个非常好的观点.我已经做到了,但是我希望在某个地方有一个很好的实现(至少部分地)可以阻止半生不熟的解决方案的扩散. (2认同)
  • 我不同意.使用并行线程是最困难的事情之一.因此,使用线程池可以避免巨大的麻烦. (2认同)

Pit*_*kos 5

这是具有这些功能的实现

  • 符合ANSI C和POSIX
  • 最小但功能强大的API
  • 来自用户的同步
  • 完整文件