Повтор выполнения задач с помощью Django-Celery - Django / Celery

Я создал службу Windows под названием ProxyMonitor , и в настоящее время я нахожусь на стадии, когда служба устанавливается и удалить так, как я хочу.

Итак, я запускаю приложение так:

C:\\Windows\\Vendor\\ProxyMonitor.exe /install

Довольно понятно, а затем я получил services.msc и запустил службу, но когда я это сделаю Я получаю следующее сообщение:

Служба прокси-монитора на локальном компьютере запущена, а затем остановлена. Некоторые службы останавливаются автоматически, если нет необходимости выполнять какие-либо действия. Например, службы журналов производительности и предупреждений

Мой код выглядит так:

public static Main(string[] Args)
{
    if (System.Environment.UserInteractive)
    {
        /*
            * Here I have my install logic
        */
    }
    else
    {
        ServiceBase.Run(new ProxyMonitor());
    }
}

А затем в классе ProxyMonitor у меня есть:

public ProxyMonitor()
{
}

protected override void OnStart(string[] args)
{
    base.OnStart(args);
    ProxyEventLog.WriteEntry("ProxyMonitor Started");

    running = true;
    while (running)
    {
        //Execution Loop
    }
}

и onStop ( ) Я просто меняю переменную running на false ;

Что мне нужно сделать, чтобы служба была постоянно активна, так как мне нужно будет отслеживать сеть, в которой мне нужно отслеживать изменения и т. Д.


Обновление: 1

protected override void OnStart(string[] args)
{
     base.OnStart(args);
     ProxyEventLog.WriteEntry("ProxyMonitor Started");

     Thread = new Thread(ThreadWorker);
     Thread.Start();
 }

В ThreadWorker У меня есть ProxyEventLogger.WriteEntry («Основной поток введен») , который не запускается.

53
задан Mark Amery 3 November 2019 в 08:20
поделиться