Vit (06.01.2012 23:30, просмотров: 182) ответил mazur на Поправил. Мэтры, прошу не ругаться и не проходить мимо. Затрону еще раз тему таймеров. Прошу рассказать алгоритмы, кто как реализует таймеры. Задержки, временные интервалы и т.д. Я не зря спрашиваю. Стопорнулся на одном моменте. Итак, один
Ничего толком о "таймерной службе" не понял, но во-первых, вложения не буду читать, ибо нах,
во-вторых, изучи, бля, общепринятые термины, а то "таймер заблокирован" это просто песец, "паузы" тоже...
в-третьих, если что-то должно считаться, то пусть считается
Реальное время может быть жестким, а может быть "мягким". В любом из случаем интервал должен быть не менее требуемого. Ошибка будет, величины ошибок могут быть разными.
Жесткие варианты это обычно выполнение чего-нить по приходу запроса прерывания от аппаратного таймера. При "мягком" популярны формирователи событий "отсчета интервала" типа аппаратного или аппаратно-программного флага, ну или декрементирующегося значения, а также решения с отсчётом интервалов по непрерывно-нарастающему счетчику. В последнем случае интервалы не должны быть больше (по модулю) периода переполнения аппаратного счетчика, иначе его "удлиняют" софтверной переменной; интервал формируют вычитанием беззнаковых, потому как при этом не требуется лишних движений для получения беззнакового результата.