【发布时间】:2010-06-15 14:22:51
【问题描述】:
我正在考虑使用上述任何一种方法来处理长时间运行的操作。
我不会详细说明使用这些方法可以完成什么,但我宁愿解释我想要做什么。
我有一组与 HTTP 相关的方法,每个方法都检索几条信息。这都是长期运行服务中更大系统的一部分(所以它不是一些一次性的、丢弃的代码)。
通常,哪种方法更好,封装性和可维护性更好:使用 Begin/End/AsyncCallback 机制处理返回的数据,或者通过从任务中触发事件,如 OnXXXReceived、OnXXXError,为每个事件使用派生的 EventArgs 类?
我希望我说的足够清楚。我决定不提供代码示例,因为我更感兴趣的是意见、建议和可能的陷阱,而不是具体实现的花絮。
谢谢!
【问题讨论】:
标签: c# asynchronous .net-4.0 task-parallel-library