Windows Serverで長期間動作し続けるサービスのためにプロセスを監視して落ちたら自動で再起動するServiceの作り方です。 pythonのsupervisorのようなもの。 Serviceの作り方 ServiceBaseを継承し、OnStart()とOnStop()のoverrideにやりたい事を実装するといいようです。 プロセスの起動、落ちてるかの確認と再起動、プロセスの停止を実装してみます。 using System.Diagnostics; using System.ServiceProcess; using System.Threading.Tasks; namespace Suporvisor { class Suporvisor: ServiceBase { public static void Main() { var service = new Suporvis