Основываясь на идеях, представленных в ссылка Я реализовал несколько различных "методов сна". Одним из таких методов был «бинарный сон», который выглядит так:
while (System.currentTimeMillis() < nextTimeStamp)
{
sleepTime -= (sleepTime / 2);
sleep(sleepTime);
}
Поскольку проверка того, достигнут ли следующий шаг времени, происходит в начале I, можно ожидать, что метод выполняется слишком долго. Но совокупное распределение ошибки симуляции (ожидаемое время - реальное время) выглядит следующим образом: альтернативный текст http://img267.imageshack.us/img267/4224/errorvscummulativearran.jpg
У кого-нибудь есть идея, почему я получаю такие результаты? Может быть, метод System.currentTimeMillis () действительно не возвращает текущее время?
BR
Markus
@ неопровержимый
Когда я сделал оценку, я также создал кривую колокольчика, используя немецкую статистическую программу. Поскольку было невозможно изменить заголовок, вот английский перевод всех соответствующих пунктов:
Häufigkeit = частота
Fehler = ошибка
Mittelwert = средний
Стандартное отклонение = стандартное отклонение
альтернативный текст http://img694.imageshack.us/img694/2254/bellcurve.jpg