Возможность достижения точного таймера «выше миллисекунды» в сети (желательно с использованием JavaScript) - PullRequest
1 голос
/ 01 июня 2011

Мне не нужна микро или нано точность, 0,1 миллисекунды будет достаточно.

Есть ли достаточно надежный способ сделать это? Это не критичное приложение, допустимы случайные ошибки из-за возможного масштабирования частоты процессора или чего-то подобного. Мне просто нужно знать, возможно ли это. Я провел поиск и не смог найти счетчики с точностью выше миллисекунды, кроме как из опроса собственного конструктора таймера Chrome.

Мне также нужно добиться этого «кросс-платформенным и кросс-браузерным» способом, поэтому любое решение должно быть достижимым на большинстве конфигов.

спасибо!

/ edit: обновление статуса: я смог исключить Javascript, Silverlight и Flash ... но как насчет Java-апплетов? Можно ли достичь точности в 0,1 миллисекунды, используя единицу?

Ответы [ 3 ]

2 голосов
/ 01 июня 2011

Я рекомендую прочитать эту статью от Джона Резига о точности времени Javascript ... и плакать: -)

2 голосов
/ 01 июня 2011

Нет, в браузерах вы не сможете получить точность, близкую к точностью до миллисекунды.

Джон Резиг написал хорошее резюме по теме . Он был написан в 2008 году, но общие выводы должны быть действительными.

0 голосов
/ 09 июня 2011

Потратив еще несколько усилий на решение этой проблемы, я пришел к выводу, что Java Applets (где доступно System.nanoTime () , что дает мне более чем достаточную точность) являются лучшим вариантом на данный момент.

Совместимость не идеальна (по крайней мере, так было бы в javascript), но большинство конфигов уже поддерживают их, и каждая общая конфигурация, по крайней мере, может поддерживать их, с простой загрузкой.

...