( Finder | 2016. 03. 24., cs – 23:14 )

> Mikrokontroller alatt az interrupt frissít, ott ez megy.

Persze, de ugyis csak egy magod van, tehat ennyi erovel a megszakitasokat is tilthatnad az eleres elott es utan.
Ha van ket magod akkor meg maris vannak szalaid, tehat spinlock es memory barrier kell.

> Pointert olvasol ki (64 biten atomi), ami az órára mutat, azt meg egy lépésben frissíted.

Csak akkor atomi ha az atomi muveletet hasznalod. A sima load/store eseten ez nem garantalt.
Egyebkent ez sem megoldas mert uj memoriat kell allokalnod hozza. Ezzel ket problemat latok:
1. A memoria allokatorok altalaban szinkronizaciot igenyelnek.
2. Nem tudod, hogy mikor lehet felszabaditani a memoriat. A szal amelyik az idot frissiti nem szabadithatja fel, hiszen egy masik szal meg dolgozhat vele. Az utolso szal ami hasznalja sem tudja, hogy o volt az utolso... Referencia szamlalassal ez is megoldhato, de az ket atomi muveletet jelent amikor elered az idot, avagy ugyanott vagy mintha rendesen szinkronizalnad az elerest.

Viszont mar elegge eltertunk az eredeti tematol... :)