У меня есть веб-сервис, который будет вызываться документами процесса ночной работы, каждый документ будет поставлен в очередь и выполнен на своем фоновом процессоре. Этот процесс может занять пару часов или несколько минут в зависимости от нагрузки. Я не хочу, чтобы он был живым, если он ничего не делает. Но когда появляется поток и сразу возвращается, часы простоя начинаются, даже если поток работает. я не установил поток в IsBackground, и он все еще заканчивается для простоя. Для моего теста я установил время простоя равным 1 минуте. Есть ли способ сохранить услугу как "ЖИВАЯ"
Вот код веб-сервиса:
public class LetterInitiateWS : System.Web.Services.WebService
{
private static Processor processor = new Processor();
[WebMethod]
public void ExecuteBulkRun()
{
var thrd = new Thread(() => ThreadExecuteBulkRun());
thrd.IsBackground = false;
thrd.Start();
}
private void ThreadExecuteBulkRun()
{
processor.ExecutBulkRun();
}
}