Zeitstempel (X11)
Die eigene Uhr des X-Servers: 32 Bit Millisekunden, die bei jedem Tastendruck und Mausklick mitgeschickt werden und entscheiden, wer gewonnen hat, wenn zwei Programme dieselbe Ressource wollen.
Der Server zählt Millisekunden ab einem beliebigen Nullpunkt, in der Praxis seinem eigenen Start, und der Zähler läuft nach etwa 49 Tagen über. Jedes Tasten-, Maus- und Property-Ereignis trägt den Wert, und er ist keine Zierde. Wer eine Selection besitzen, einen Grab setzen oder den Fokus verschieben will, schickt einen Zeitstempel mit, und der Server lehnt die Anfrage ab, wenn er älter ist als die letzte Änderung. So werden Wettläufe zwischen Clients entschieden, ohne dass der Server wissen müsste, wer recht hat: Es gewinnt, wer auf das jüngste Benutzerereignis reagiert.
Die Konstante CurrentTime, null, bedeutet „jetzt“ und ist verlockend, wenn kein Ereignis zur Hand ist. ICCCM verbietet sie für Selections, da „jetzt“ nie ein Rennen verliert und die Regel damit sinnlos macht; ein Programm ohne frisches Ereignis soll null Bytes in eine Property schreiben und die Zeit aus dem zurückkommenden PropertyNotify lesen. Dieselben Stempel tragen die späteren Schichten: _NET_WM_USER_TIME und Startup Notification halten fest, wann der Benutzer zuletzt etwas getan hat – die gesamte Grundlage der Focus-Stealing-Prevention.