如何解决推送所有任务后调整C ++线程池库CTPL的大小
我正在使用CTPL库,并且在我的代码中创建了一个只有一个线程的线程池,然后将要执行的所有任务推送到队列中。之后,在该线程执行任务时,我使用另一个resize
方法使用另一个线程(不属于线程池)来增加线程池中的线程数。但是,由于我添加的新线程不会执行任何操作,因此大小调整没有任何效果,只有第一个线程(线程0 )执行仍在队列中的任务。
发生这种情况是因为当我推送任务时,它们会自动与线程相关联吗?就我而言,因为当我执行任务时,线程池中只有 thread 0 ,所有功能都与该线程相关联?
此外,从线程池外部的函数调用resize是否有问题?
预先感谢您的帮助!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。