![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
AlexKar |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
Мне нужно вызывать функцию с интервалом порядка нескольких микросекунд, соответственно SetTimer() использовать бесполезно (минимальный интервал для этой функции порядка нескольких миллисекунд), подскажите пожалуйста чЁ-нибудь
![]() |
|||
|
||||
Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
AlexKar,
Смотри QueryPerformanceCounter/QueryPerformanceFrequency в msdn |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 2 Всего: 99 |
А сколько она сама времени длится? -------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
AlexKar |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
Она длится порядка 0,1 микросекунды (поиск методом Фибоначчи в маршрутной таблице), а QueryPerformanceCounter/QueryPerformanceFrequency - это как я понял Win32 API функции?
|
|||
|
||||
Dreamer_0x01 |
|
|||
![]() Терминатор ![]() ![]() Профиль Группа: Участник Сообщений: 780 Регистрация: 14.4.2005 Где: Санкт-Петербург Репутация: нет Всего: 12 |
ты же этот вопрос поднимал вот десь:
http://forum.vingrad.ru/index.php?showtopic=82663 И там пришли к выводу, что под Windows вроде как не получится. -------------------- Нет ничего невозможного. Есть цели, и есть время и силы на их достижение. |
|||
|
||||
Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 3 Всего: 73 |
Тебе таймер, для синхронизации нужен, или просто организовать простои с необязательно равными промежутками? Если второе, то кажется проблему разрешить на низком уровне. Т.е. на асме написать цикл NOP'ов, по окончании взывать прерывание. Это должно давать малую паузу, без нагрузки на проц (поправьте ежель не прав). Но это уже обсуждать в разделе асм. Добавлено @ 13:32 Dreamer_0x01, а по ссылке про железку в слот - мысль -------------------- Теперь при чем :P |
|||
|
||||
threef |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 27.10.2005 Где: Запорожье Репутация: 9 Всего: 10 |
Стандартный таймер не подойдет. Можешь сделать свой, основанный на тактах процессора. http://forum.vingrad.ru/index.php?showtopi...st&p=638492
|
|||
|
||||
AlexKar |
|
|||
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 7.12.2005 Репутация: нет Всего: нет |
Я почитал Рихтера, и нашел такой способ:
Этот код дает нужную задержку, единственный trouble, это, когда я его использую в цикле, проц загружается на 100% |
|||
|
||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 16 Всего: 98 |
выноси код в отдельный поток.
+ а что ты хотел -- выполнять код примерно 1000000 раз в секунду -- это дает определенную нагрузку... -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |