Рубиновый сон или задержка меньше секунды?

Я создаю script с ruby, который должен отображать кадры со скоростью 24 кадра в секунду, но мне нужно ждать 1/24 секунды в секундах между отправкой команд. Каков наилучший способ спать менее чем за секунду?

Ответ 1

sleep(1.0/24.0)

Что касается вашего последующего вопроса, если это лучший способ: Нет, вы могли бы получить не столь гладкие фреймы, потому что рендеринг каждого кадра может не занимать одинаковое количество времени.

Вы можете попробовать одно из следующих решений:

  • Используйте таймер, который срабатывает 24 раза в секунду с помощью кода чертежа.
  • Создайте как можно больше кадров, создайте движение, основанное на пропущенном времени, а не на кадре.

Ответ 2

Пропустите float для сна, например sleep 0.1