У меня есть служба Windows C #.Метод OnStart()
содержит 3 строки, которые все, что они делают, это запускают поток.Сам класс не имеет статических объектов, которые могли бы вызвать задержку.Это так просто, как услуга может быть.Мой код подписан самодельным ключом.
Редактировать: Я только что понял, что сборка не подписана, остальные.Он использует несколько сборок, которые подписаны, но сама служба - нет.
Этот код выполняется внутри виртуальной машины, когда хост работает медленно и эта виртуальная машина загружается, служба не запускаетсяс этой ошибкой:
Истекло время ожидания (30000 миллисекунд) в ожидании подключения службы ServiceName.
Настройка задержки запуска службы исправляет его, но этодолгая задержка и это очень раздражает.У кого-нибудь еще была такая проблема со службами .NET (2.0)?
Метод OnStart:
protected override void OnStart(string[] args)
{
Thread startThread = new Thread(new ThreadStart(StartThread));
startThread.IsBackground = true;
startThread.Start();
}
Метод StartThread, в котором все, что я делаю, это вызывает другой класс, чтобы OnStart не пришлось ждать инициализации статической переменной или конструктораметод до конца.
private void StartThread()
{
Worker mainThread = new Worker(this);
mainThread.RunWorker();
}
Спасибо.