.Net类库:线程责任

| 我正在一个类库上工作,其中一个类负责使用Internet上的
XDocument.Load(url)
检索Xml文件。看到此操作可能需要花费几秒钟才能完成,因此有必要在自己的线程上运行它。 创建此线程由谁负责?使用者还是检索文件的类?是否有关于此的最佳实践?     
已邀请:
        最佳实践是实现异步模式。这意味着,如果您的类具有
LoadXml
方法,则您还将实现
LoadXmlAsync
方法和某种
OnCompleted
事件。 你可以在这里读到它     
        我认为这两种选择都很好。它还取决于您将使用此方法在多少地方获取数据。如果在多个地方使用它,则将线程安排在检索文件的类中是很有意义的。 我个人会选择最后一个,因为如果我需要在更多地方使用它(可能稍后),这将给我带来更大的灵活性。 在考虑这个问题时,想到了带前缀的方法BeginDoSomeOperation和EndDoSomeOperation,这将使最后的选择有更多的功劳。     

要回复问题请先登录注册