Da hast Du aber Glück, daß sich die konkurierenden Threads nicht ins Gehege kommen. Und Glück ist ein recht unzuverlässiger Bestandteil von Programmen.
Solange man atomare Funktionen zum Lesen und Setzen verwendet, ist eine Synchronisation oder ähnliches ohnehin nicht erforderlich.
Und solange man nur auf einer Seite Werte hineinschreibt und auf der anderen liest, passiert auch das nur mit je einem Assemblerbefehl, so dass das auch schon atomar ist. Vorausgesetzt ist dabei natürlich, dass es eine einfache 32-Bit Integervariable oder ein 32-Bit Integerfeld ist, das entsprechend ausgerichtet ist, z.B. durch Setzen von {$ALIGN 4}.