我有一些任务需要30多分钟才能完成。我不知道如何维持这种任务。请帮我这个
答案 0 :(得分:2)
我使用Hangfire作为后台任务的一个项目,我发现它非常好。
Hangfire是一个开源框架,可帮助您创建,处理和管理后台作业。它带有开箱即用的仪表板,可以跟踪您的后台工作以及更多很酷的功能。
该文档非常适合开始使用该工具。 您可以找到文档here。
答案 1 :(得分:1)
它需要是异步的以及分布式的(可能)。在我们的项目中,我们使用Akka.Net
来完成这些任务。它使用actor模型,它基本上是你要求在后台看不到长期async
任务的代码的一部分。
http://getakka.net/docs/Getting%20started
var greeter = system.ActorOf<GreetingActor>("greeter");
greeter.Tell(new Greet("World"));
代替GreetingActor
,您将拥有漫长的运行流程,在第二行代码中,您会向其传递一条消息,告知其运行async
。如果您需要<actor>.Ask()
,还有synchronous
。