Шутки ради когда-то написал я маленький скриптик который пингует чей-то сервак, эмулируя действия игрухи ВКонтакте, написал и забыл. Сейчас смотрю, стали приходить сообщения от игры
Померься перцами. Оказывается перец вырос больше всех, его постоянно там кто-то обрезает. Забава про которую я и думать забыл стала реально интересной. Теперь в други набиваются всякие хз-кто, вечная движуха, на сайт стало даже прикольно заходить. Но самым для меня, как для программиста, интересным был алгоритм работы проги которую написал черти когда, а восторгнулся им только сегодня.
Задача кажется простая: по таймеру раз в 20 минут можно пингануть сервак и получить прибавку к перцу. Загвоздка в том что +- маленькие задержки и не всякий раз этот таймер срабатывает, нужно ещё несколько секунд накинуть. Но как настроить cron чтобы каждые 20 минут плюс одна секунда проходил запуск сценария? Как сделать так чтобы cron отрабатывал не два раза в час, а три?
Моё решение этой задачки - счётчик секунд, которых нужно подождать перед отправкой запроса. Когда счётчик становится равным 20 минутам он сбрасывается и всё поехало по-новой. Гениальное просто, а пересматривать то что писал давно-давно в 4 утра бывает очень даже полезно. Советую.
Да, кстати, благодаря этой задачке я однажды узнал что существует прекрасное представление времени, которое называется
Swatch Internet time. Для программиста просто идеальный вариант отсчёта времени, когда всё кратно 10. Я бы всеми руками и ногами хотел вшить в долбаный крон возможность работать с таким форматом. Но не знаю си, поэтому предлагаю эту идею людям способным осилить. Осильте кто-нибудь, а? ;-)