如何确保处理正常

时间:2018-12-14 20:27:39

标签: c# process task exit

我希望我的申请能够正常结束。有可能这样做吗?如果是这样,我该怎么做?

以下是应用程序外观的一般概述:

foreach (var item in p)
{
     Console.WriteLine(item);
}

此应用通常将在某些服务器上不间断运行。但是,如果用户需要将其放下,我希望该作业正常退出:

  • 停止查询队列中是否有其他消息。查询的消息已被数据库锁定,因此其他进程无法处理同一条消息。
  • 允许所有正在运行的任务完成。

是否有可能做到这一点?我可以使用哪些技术/图书馆/概念来实现这一目标?

1 个答案:

答案 0 :(得分:0)

为避免在代码中管理作业的复杂性,可以使用第三方软件包,即Hangfire

从本质上讲,您将解雇您的工作,而让另一个进程来处理这些工作。如果您的应用程序出现故障,则hangfire服务器将继续运行。