199 подписчиков
🕒 Теперь, когда у нас больше 4MB RAM, можно нам секунды в часах на панели задач?
Рэймонд Чен объясняет, почему все еще нельзя. Он начинает с отсылки к своему же посту 20-летней давности про Windows 95 ⌛️ Тогда в бета-версии секунды были, но их выпилили из-за влияния на производительность при 4MB RAM. Тогда такой объем был минимальной поддерживаемой конфигурацией.
👥 В 2022 году Рэймонд для начала смещает аргументацию в сторону многопользовательских систем. На сервере терминалов ежесекундное обновление часов для множества пользователей считается нецелесообразным. По той же причине отключают мигание курсора в тексте каждые 500 мс.
🔋 В клиентских же ОС ответ все тот же - производительность. Любая периодичная активность с частотой менее минуты подвергается анализу продуктовой группы, отвечающей за производительность. Потому что такая частота препятствует уходу процессора в состояние пониженного энергопотребления.
Ежесекундное обновление часов не считается важной составляющей UX в отличие от позиции курсора при вводе текста или плавного воспроизведения видео. Поэтому все некритичные таймеры обязаны иметь минимальный период обновления в одну минуту. Чтобы минимизировать пробуждения системы, разработчики должны делать коалесцирующие таймеры ✌️
1 минута
25 апреля 2022