Расширение SYNC (X11)
Счётчики и будильники внутри X-сервера, чтобы клиенты могли ждать друг друга без опроса.
Протокол X асинхронный: клиент шлёт запросы и не знает, когда они на самом деле выполнятся. X Synchronization Extension, вышедшее с X11R6 в 1994 году, добавляет счётчики, которые сервер или клиент может увеличивать, и будильники, срабатывающие при пересечении заданного значения. Задумано оно было для мультимедиа — держать в такт звук и видео, — но главное применение нашло в другом.
Через _NET_WM_SYNC_REQUEST из EWMH оконный менеджер может попросить приложение сообщить, когда оно перерисовалось после изменения размера, вместо того чтобы накладывать следующее изменение на недорисованный кадр. Без этого содержимое заметно отстаёт от рамки. Позднее добавили fence — ими пользуются композитные оконные менеджеры и GL-драйверы, чтобы сдерживать разрывы кадров.