![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
Подскажите, можно ли сделать так, чтобы функция вызывалась, скажем, каждые 2 мс, но при этом проц не грузился на «все 100»?
--------------------
Приполз. Увидел. Укусил. |
|||
|
||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 13 Всего: 98 |
ищи по форуму.
заранее могу сказать -- никак не получится -------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
Я уже поискал. Нашел только то, что не получится. Эээ... Винда, блин.
--------------------
Приполз. Увидел. Укусил. |
|||
|
||||
Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
А чем sleep и for неустраивают?
|
|||
|
||||
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
Оно сейчас так и работает. Ситуация похожа на ту, которую ты говорил поискать. У меня в другом потоке графики рисуются. Устройство работает через COM и USB. С USB все в порядке, но COM все вешает. Сигнальные линии в COM не задействованы, событие повесить не могу. Посему хочу найти именно такой способ. К тому же на будущее полезно.
--------------------
Приполз. Увидел. Укусил. |
|||
|
||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 13 Всего: 98 |
Fixin, этот способ не подходит еще по одной причине -- Sleep имеет дискретность в 10 мс
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
VectorMan |
|
|||
Antihero ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 9.4.2006 Репутация: 1 Всего: 4 |
а WaitForSingleObject не подходит? ещё можно заюзать timeSetEvent
|
|||
|
||||
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
WaitForSingleObject не к чему прикрутить, а про timeSetEvent я не знал, попробую...
--------------------
Приполз. Увидел. Укусил. |
|||
|
||||
VectorMan |
|
||||
Antihero ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 9.4.2006 Репутация: 1 Всего: 4 |
а так?
хотя наверное у этой функции тоже есть какие то ограничения по точности |
||||
|
|||||
_hunter |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 8564 Регистрация: 24.6.2003 Где: Europe::Ukraine:: Kiev Репутация: 13 Всего: 98 |
есть. причем полностью аналогичные ограничениям Sleep' а
-------------------- Tempora mutantur, et nos mutamur in illis... |
|||
|
||||
Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Это ограничение существует из-за ограничений самой винды (ее архитектуры), можно только искуственные методы, с которыми я не знаком
|
|||
|
||||
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
Она почему-то тормозит. Очень сильно тормозит. Может я что делаю не так?
Это сообщение отредактировал(а) zhgutov - 11.4.2006, 15:40 --------------------
Приполз. Увидел. Укусил. |
|||
|
||||
Fixin |
|
|||
![]() Ёжик ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1357 Регистрация: 6.1.2004 Репутация: 8 Всего: 18 |
Создание объекта и преобразование тпов - не быстрая операция
|
|||
|
||||
zhgutov |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 120 Регистрация: 14.12.2004 Репутация: 1 Всего: 2 |
Объект там не создается и тип не преобразуется (unsigned -> void*). Временной интервал — 50 мс. Пробовал разные значения интервала и точности. Все-равно тормозит. Параллельно работает поток отображения всяких там графиков, проц грузится на 15 %, но тормозит (50 мс -> ~0.5 с)!
--------------------
Приполз. Увидел. Укусил. |
|||
|
||||
VectorMan |
|
|||
Antihero ![]() Профиль Группа: Участник Сообщений: 110 Регистрация: 9.4.2006 Репутация: 1 Всего: 4 |
в MSDN настоятельно рекомендуют перед использованием функций семейства time* устанавливать точность таймера через timeBeginPeriod (и соответственно после окончания работы использовать timeEndPeriod) Это сообщение отредактировал(а) VectorMan - 11.4.2006, 15:58 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |