设计具有长时间运行任务的接口

时间:2015-07-03 09:42:05

标签: c#

我即将设计一个界面,其中包含一个触发长时间运行的功能。

现在我不确定我是否应该在界面本身提供此功能,还是由调用者决定是否要将其称为阻塞或异步。

==

我应该在界面中有两种方式还是最多决定一种?如果是的话,哪一个?

1 个答案:

答案 0 :(得分:0)

这取决于此界面所在的架构。

如果环境是使用指南/做法构建的,以便在必要时将客户端解耦,请使用阻止调用。如果环境有指导/做法,期望短暂延迟,请使用异步版本。

如果您可以使用C#5,请考虑使用PerformTaskAsync返回任务,以便客户端可以在需要时轻松等待完成。

相关问题