【发布时间】:2011-04-15 19:29:18
【问题描述】:
我需要在一个新应用程序中创建多个处理线程。每个线程都有可能“长时间运行”。有人可以评论我的应用程序中使用的内置 .net 线程池或一些现有的自定义线程池的可行性吗?
要求:
在 Windows 服务中运行良好。 (排队的工作可以从队列中移除,当前正在运行的线程可以被告知停止)
能够启动多个线程。
工作需要按顺序启动,但多个线程可以并行处理。
可以检测并杀死挂起的线程。
编辑:
评论似乎导致手动线程。不幸的是,我坚持使用 3.5 版本的框架。 Threadpool 很有吸引力,因为它允许我排队工作并在资源可用时为我创建线程。是否有一个很好的 3.5 兼容模式(也许是生产者/消费者)可以在不实际使用线程池的情况下为我提供线程池的这一方面?
【问题讨论】:
-
不存在能够可靠地杀死线程而不会严重破坏应用程序稳定性的 TP。
标签: c# multithreading threadpool