Задать вопрос
Dyikot
@Dyikot

Как лучше реализовать асинхронную задержку?

Недавно ознакомился с сопрограммами 20 стандарта и тут возникает вопрос о правильности реализвации задержки. На данный момент я реализовал задержку в пределах одного потока. В основном цикле производится их обработка, т.е есть приоритетная очередь и просто проверятся вышло ли время и если да то используя обработчик сопрограммы производится ее "продолжение". И проблема какая. У меня в цикле стоит еще задержка равная частоте обновления монитора. И если 60 Гц, то эта проверка будет производится каждые ~16.667 мс. Что оказывается неточность при небольших задержках. И Вот тут возникает вопросы. А может лучше тогда перенести обработку на отдельный поток? Но ведь продолжение всеравно придется вызывать в основном потоке? Или может изменить обработку задержки?
Также у меня есть реализвация таймера, который ждет в отдельном потоке. Можно было бы его использывать, но тогда на каждую зарержку отдельный поток...
  • Вопрос задан
  • 23 просмотра
Подписаться 2 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Skillbox
    Разработчик на C++
    7 месяцев
    Далее
  • Нетология
    Разработчик на C++: Профессия + специализация + нейросети
    12 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы