В настоящее время я пишу приложение на C #, в котором мне нужно запустить таймер прибл. каждые 5 миллисекунд. Из некоторых исследований кажется, что лучший способ сделать это включает p / вызов timeBeginPeriod (...) для изменения разрешения системного таймера. В моем примере кода он работает достаточно хорошо.
Я нашел интересное предупреждение об использовании этой функции в блоге Ларри Остермана MSDN в этой записи :
Адам: вызов timeBeginPeriod также увеличивает точность GetTickCount.
Использование timeBeginPeriod - ужасно плохая идея в целом - мы активно исключаем все его использования в Windows из-за последствий потребления энергии, связанных с его использованием.
Есть более эффективные способы обеспечить своевременную работу вашего потока.
Кто-нибудь знает, почему это происходит, или какие могут быть «лучшие способы» (которые не указаны в цепочке)? О каком дополнительном энергопотреблении идет речь?