Я знаю, что в .NET существует три типа таймеров (см. Сравнение классов таймеров в библиотеке классов .NET Framework ). Я выбрал поточный таймер, так как другие типы могут дрейфовать, если основной поток занят, и мне нужно, чтобы это было надежно.
То, как этот таймер работает в управлении таймером, помещается в другой поток, поэтому он всегда может работать вместе с началом работы, завершенной в родительском потоке, когда он не занят.
Проблема с этим таймером в консольном приложении заключается в том, что пока таймер работает в другом потоке, основной поток ничего не делает для закрытия приложения.
Я попытался добавить while true
цикл, но тогда основной поток был слишком занят, когда таймер сработал.