执行并行线程池
回答
我的问题是一旦一个线程运行到它的终止,我可以再次使用它 ?
是的,这是池的目的,重用线程,而不是销毁它们。
如何线程返回到它的线程池。
通过试图从队列中另一个元素。循环做是一种方法。
这里是每一个线程做在我的实现(这是pthread_create
使用的实际功能):
static void *
_tp_worker(void *arg)
{
/* ... */
/* Wait until tasks is available. */
while (!queue_get(pool->pend_q, &t_ptr)) {
/* And then execute it. */
}
}
我得到了点。我们从来没有让这种终止 – FourOfAKind
@Lamia你可以让它通过操纵取之于'queue_get'返回/检查,而里面的东西终止。 – cnicutar
好的。非常感谢。我得到了主要观点。 – FourOfAKind
- 1. 线程池执行程序
- 2. 线程池执行程序接受customqueue
- 3. 线程池执行延迟疑问
- 4. 等待线程池完成执行
- 5. 的Java执行器服务线程池
- 6. 线程池执行器不更新并发哈希映射
- 7. 执行程序关闭后,为什么Runnable仍然在可执行的线程池执行程序中执行?
- 8. 线程池执行顺序并将未来传递给另一个线程
- 9. 你可以选择线程池中的线程来执行(boost)
- 10. 在C#中的线程池类管理线程执行
- 11. Java线程池ExecutorService:线程执行顺序
- 12. 使用asio提升线程池:线程随机不执行
- 13. C++线程池中的线程执行顺序
- 14. 正确使用JavaFX任务执行多线程和线程池
- 15. 并行执行和终止多线程
- 16. 限制scalatest并行执行线程号
- 17. 并行执行java中的多线程
- 18. 并行执行多条线程
- 19. 运行并发线程执行
- 20. 线程池运行为了
- 21. C#执行SQL SP使用多线程或并行执行
- 22. 线程执行
- 23. .net 4.0 c#:暂停/恢复线程池中的并行运行线程暂时?
- 24. 具有优先任务并避免饥饿的线程池执行程序
- 25. 如何创建多个线程池(即多个执行程序,每个线程池都有一个线程)
- 26. 用联合执行程序服务替换石英线程池
- 27. 在Scala中替换线程执行程序池
- 28. 使用执行程序的线程池Framrwork
- 29. 执行程序创建的线程池是否释放内存?
- 30. 一次执行程序池限制线程数
参见http://stackoverflow.com/questions/3561095/a-very-simple-线程池使用,并行线程,在-C和http://software.intel.com/en-us/forums/showthread.php?t=53220 – derobert