C# 控制台。如何每 10 分钟重新启动一个应用程序?

C# console. how to restart an application every 10 minutes?

我有一个 C# 控制台应用程序需要每 10 分钟重新启动一次。到目前为止,我一直在使用批处理脚本来执行此操作,但现在我需要在 linux 上使用单声道 运行 此应用程序。关于如何做到这一点的任何提示? 我不想为此创建 bash 脚本。也许在我的 C# 代码中。 我试过线程、定时器等等。

您可以使用 cron 作业将其安排为每 10 分钟 运行,例如:

http://www.cyberciti.biz/faq/how-do-i-add-jobs-to-cron-under-linux-or-unix-oses/

您开始应用的新副本并关闭当前副本。

string myApp = System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase;
    System.Diagnostics.Process.Start(myApp);
    Environment.Exit(0);

您不想使用 Bash 脚本,但我认为这是一个很好且快速的解决方案。

在您的 crontab 中添加如下内容:

*/10 * * * * /script/pathname.sh 

在常规 crontab 中开启:

*/10 * * * * username /script/pathname.sh 

在脚本中,这样写:

#!/bin/bash
killall myapp
/usr/bin/myapp

不要忘记 sha bang,不要忘记让它可执行:

chmod u+x /usr/bin/myapp