保持C#Console应用程序运行的最佳方法是什么

amb*_*ide 3 .net c#

我开发了一个必须在后台运行的控制台应用程序.应用程序必须不断检查数据库以获取新记录.如果返回新记录,则会对其进行处理.我当前使用的应用程序使用while(true)来保持应用程序运行.使用while循环是最佳解决方案.

我的代码片段:

static void Main(string[] args)
{
  while(true)
  {
    // Query db for new records
    if(record_count > 0)
    {
      // Process the records
    }
    Thread.Sleep(500);
  }
}
Run Code Online (Sandbox Code Playgroud)

Sou*_*mar 10

创建为Windows服务应用程序

什么是Windows服务?

  • 使您能够创建在其自己的Windows会话中运行的长时间运行的可执行应用程序.
  • 可以在计算机启动时自动启动,可以暂停和重新启动而无需任何用户交互.
  • 通过运行命令行实用程序InstallUtil.exe并将路径传递到服务的可执行文件,可以轻松安装.

为何选择Windows服务?

某些业务最常见的要求之一是基于某个时间间隔长期运行的预定作业.例如:每天下午发送简报或每隔一小时向客户发送一封电子邮件提醒.

因此,构建Windows服务可能是实现目标的可靠解决方案之一,该目标可以在后台执行所需的工作,而不会干扰同一台计算机上的其他用户.

请参考链接逐步实施 -

http://www.c-sharpcorner.com/UploadFile/naresh.avari/develop-and-install-a-windows-service-in-C-Sharp/

  • 如果该链接以某种方式停止工作或被移动,则仅链接答案可能变为无效.为帖子添加足够好的上下文总能帮助用户. (4认同)