Строитель
457 / 74 / 4
Регистрация: 18.06.2010
Сообщений: 514
|
|
1 | |
Sleep() имеет плохую точность задержки времени, есть альтернативы?26.04.2017, 16:47. Показов 1962. Ответов 2
Метки нет Все метки)
(
Столкнулся с проблемой в коде с++
установка Sleep(1);//Задержка кода на 1 миллисек. Однако это далеко не так. За место 1 миллисекунды реально может получатся 3-5 миллисекунд. Решал задачу с тем как стабилизировать fps - количества кадров отрисовки в секунду. Может у кого есть полезные коды для стабилизации fps? Может есть альтернатива Sleep()? Может есть возможности просто кодом тормозить скорость выполнения. Но это может приводить к тому, что процессоры могут больше обрабатывать кода или меньше и все это будет влиять на изменения fps. Можно конечно сделать свои самонастраиваемые автоматические корректировки с кодом задержки. Еще заметил особенность, когда запускал браузер гугл хром, то задержка Sleep(1) была на много точнее. Но все равно это не позволяет получить более точную задержку. Даже если гасить часть кадров из 10, то все равно Sleep() работает не точно. Хотя тут могут еще части кода влиять. Но сильнее дает погрешность Sleep(). Кто, что расскажет? Добавлено через 8 минут Пока сочинял эту тему пришла в голову мысль использовать timer SetTimer(hWnd,1,10,NULL); Кто-то пробовал, что-либо писать с таймеров для fps.
0
|
|
26.04.2017, 16:47 | |
Ответы с готовыми решениями:
2
Какие есть функции для задержки времени? Есть ли программа для автозапуска с функцией задержки времени? Задержки в Sleep |
![]() |
|
26.04.2017, 17:25 | 2 |
Странное поведение Thread.Sleep
Более высокое разрешение задержки можно получить с QueryPerformanceCounter.
1
|
58 / 14 / 5
Регистрация: 07.04.2017
Сообщений: 58
|
|
26.04.2017, 19:12 | 3 |
infobos, а никто не говорил, что Windows - realtime-ОС. когда твой поток начнет исполнятся - никто не знает. он может и на несколько секунд перестать выполняться, а может и вообще больше не выполниться.
может помочь: SetThreadPriority - установить приоритет потока timeGetDevCaps - узнать точность таймера timeBeginPeriod - установить точность таймера
1
|
26.04.2017, 19:12 | |
Помогаю со студенческими работами здесь
3
Команда задержки Sleep Объясните тупому почему задержка потока по Sleep() больше чем ... с вызывает задержки и других потоков? Создание сайта: альтернативы, затраты времени, подводные камни Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |