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