следующий код
new System.Threading.Timer(state =>
{
var query = "Select Caption from Win32_OperatingSystem";
var objectQuery = new WqlObjectQuery(query);
var searcher = new ManagementObjectSearcher(objectQuery);
searcher.Get();
//unreachable code
}, null, 0, 1000);
немедленно завершает работу моего приложения без исключений.
Если вы скопируете и вставите эти строки в новый консольный проект, вы, вероятно, не сможете воспроизвести проблему.
Приведенный выше код является небольшой частью моей службы Windows и, вероятно, является причиной проблемы. Приведенный выше код выполняется модульными тестами, которые работают нормально, не вызывая исключений.
Последняя выполненная строка перед проблемой не всегда одинакова.
Что мне делать?