我正在寻找一个跨平台的 C++ 主从库或工作队列库。基本思路是,我的应用程序将创建某种任务或工作对象,将它们传递给工作主控或工作队列,然后在单独的线程或进程中执行这些工作。为了提供一些背景信息,该应用程序是一个 CD 拷贝器,我想并行化的任务包括“拷贝音轨”、“将 WAV 编码为 MP3”等。
我的基本要求如下:
- 必须支持可配置数量的并发任务。 - 必须支持任务之间的依赖关系,以便在所有依赖任务完成之前不执行任务。 - 必须允许取消任务(或至少不防止我将取消编码到自己的任务中)。 - 必须允许向主应用程序线程报告状态和进度信息。 - 必须在 Windows、Mac OS X 和 Linux 上工作。 - 必须是开源的。
如果这个库还能:
- 与 Qt 的信号/槽机制集成; - 支持使用线程或进程执行任务;
那就更好了。
类比 Java 的 ExecutorService 或其他类似的线程池库,我正在寻找一个类似的跨平台 C++ 库。有人知道这样的东西吗?
谢谢!
我的基本要求如下:
- 必须支持可配置数量的并发任务。 - 必须支持任务之间的依赖关系,以便在所有依赖任务完成之前不执行任务。 - 必须允许取消任务(或至少不防止我将取消编码到自己的任务中)。 - 必须允许向主应用程序线程报告状态和进度信息。 - 必须在 Windows、Mac OS X 和 Linux 上工作。 - 必须是开源的。
如果这个库还能:
- 与 Qt 的信号/槽机制集成; - 支持使用线程或进程执行任务;
那就更好了。
类比 Java 的 ExecutorService 或其他类似的线程池库,我正在寻找一个类似的跨平台 C++ 库。有人知道这样的东西吗?
谢谢!