我需要构建一个具有调度优先级的线程池:所有正在运行的线程在CPU时间和操作系统优先级方面具有相同的优先级,但是当需要选择下一个要完成的任务时,优先级最高的任务首先执行 .

我查看prioritized handlers example in the asio documentation但是我没有限制线程数,我必须手动安排任务 . 我需要的是从队列中获取任务的固定数量的线程,因此我可以在应用程序中创建单个池,然后在应用程序生命周期内随时添加任务 .

什么就足够了在任务完成时从asio :: io_service获得一些通知;该通知的处理程序可以找到具有最高优先级的下一个任务,并将其发布到服务 .

那可能吗?