C#类设计 - 事件和长时间运行的方法

6
我有一个类,其中包含一些长时间运行的方法,在这些方法中,它们进行数据库查询,检索对象列表,迭代并执行一些IO操作。
应该如何设计这个类?
如果任务完成,我应该在我的类中使用OnComplete事件吗?
我确实希望给消费者取消/中止的能力,因此仅报告方法何时完成是不够好的。
最初,我在我的UI代码中有一个BackgroundWorker(和大部分逻辑),但是我将逻辑分离,使其全部位于单独的库中。
我正在考虑在类中添加后台工作程序,并简单地传递与后台工作程序引发的相似事件。这是最佳方法吗?

你可能需要等到Jon Skeet起床才能得到最好的答案。 - Bala R
Jon Skeet明天可以睡懒觉了 ;) - Josh
1个回答

3

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接