2015-07-07 3 views
1

Я хотел бы, чтобы таймер работал 100% дня и не был уверен, что это вызовет проблему. Он будет тикать один раз в минуту по большей части и будет сравнивать DateTime.Now с 5 сохраненными значениями.C# timer Всегда включено Производительность

Теоретически, если этот таймер работает, я буду принимать удар производительности один раз в минуту, или это минимальный код, связанный с созданием проблемы.

+5

Компьютеры могут выполнять миллионы операций в секунду. Сравнение текущего времени с 5 значениями «DateTime» каждую минуту не вызовет проблем с производительностью ... – MarcinJuraszek

+0

Даже если это не нужно, в этом случае хорошей практикой является отключение таймера при запуске кода обработчика события и его повторное включение в конце обработчика событий. – Graffito

+0

Итак, отметьте раз в минуту, Запустите обработчик (функция делегата), а затем снова запустите таймер? wont это создает пробел. Как долго делегат берет на себя выполнение? означает, что каждый тик будет, возможно, 1 минута и 1 секунда? @Graffito – ModS

ответ

1

Не будет достаточного количества кода, чтобы иметь заметную производительность. Таймер выполняет код в одном или нескольких приемниках событий и будет использовать минимальное количество циклов процессора.

+2

Он не использует нить, но в противном случае правильный. – usr

+0

Приносим извинения, я думал о System.Threading.Timer – oppassum

+0

Спасибо, мне действительно нужно не торопиться, и надеялся, что этот постоянный «таймер» включен, может повлиять на производительность. Я ценю это :) – ModS