Junior — Middle
Použili jste v projektech atomové operace?
sobes.tech AI
Odpověď od AI
V jazyce Go se atomové operace používají k bezpečné změně proměnných v konkurenčním prostředí bez použití zámků. Například balíček sync/atomic poskytuje funkce pro atomické zvyšování, porovnávání a nahrazování hodnot.
Příklad atomického inkrementu čítače:
import (
"fmt"
"sync/atomic"
)
var counter int64
func increment() {
atomic.AddInt64(&counter, 1)
}
func main() {
increment()
fmt.Println(atomic.LoadInt64(&counter)) // Vypíše 1
}
Použití atomických operací pomáhá zabránit závodním podmínkám při práci s jednoduchými datovými typy a zajišťuje vysoký výkon bez zámků.