Sobes.tech
Junior — Middle

Ați folosit operații atomice în proiectele dvs.?

sobes.tech AI

Răspuns de la AI

În Go, operațiile atomice sunt utilizate pentru a modifica în siguranță variabilele într-un mediu concurent fără a folosi mutex-uri. De exemplu, pachetul sync/atomic oferă funcții pentru creșterea, compararea și înlocuirea valorilor în mod atomic.

Exemplu de incrementare atomică a unui contor:

import (
    "fmt"
    "sync/atomic"
)

var counter int64

func increment() {
    atomic.AddInt64(&counter, 1)
}

func main() {
    increment()
    fmt.Println(atomic.LoadInt64(&counter)) // Va afișa 1
}

Utilizarea operațiilor atomice ajută la evitarea condițiilor de cursă atunci când se lucrează cu tipuri de date simple, asigurând performanță ridicată fără blocări.