【发布时间】:2012-07-20 08:12:35
【问题描述】:
我有一个 C# 4 应用程序正在订阅一个事件,我希望该事件会快速连续地引发很多次。每次引发它时都需要做一些我不想阻塞事件线程的工作。
感觉就像我应该将这个“块”工作传递给后台线程/任务并允许事件线程继续,但是我还需要确保没有创建太多线程,正如我所说, 我希望这个事件能很快被提出很多次。
是否有公认的模式或推荐的方法将事件处理程序工作负载传递给后台线程但限制创建的线程数量?
感觉应该有某种方法可以为此使用任务并行库,但目前找不到完全符合我需要的任何东西。
如果有人需要更多信息,请告诉我,因为我很感激我对我所说的内容非常笼统。
谢谢。
【问题讨论】:
标签: multithreading c#-4.0 event-handling backgroundworker task-parallel-library