Re: Вызов функции с частотой 2000 раз в секунду
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 06.04.07 08:08
Оценка:
Здравствуйте, Slepchenkov, Вы писали:

S>У меня есть WinXP приложение.

S>Мне нужно вызывать некоторую функцию с частотой 2000 раз в секунду (т.е. на подобе прерывания по таймеру).

Можете, конечно, побаловаться с Waitable Timers, там время задается в 100-наносекундных интервалах, но только зря потратите время. Единственный способ обеспечить точность такого порядка в user-mode — это поднять приоретет потока и крутить цикл без ожидания, отмеряя время посредством TSC или QueryPerformanceCounter. Разумеется, накладные расходы это создаст дикие, поэтому на однопроцессорной машине работать будет только этот поток, и практически ничего больше.

А если Вы из этого потока попытаетесь работать с файлами/окнами и другими сложными объектами — готовьтесь к паузам в единицы, а то и десятки миллисекунд.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.