Sobes.tech
Junior — Middle

Hai utilizzato operazioni atomiche nei tuoi progetti?

sobes.tech AI

Risposta dell'AI

In Go, le operazioni atomiche vengono utilizzate per modificare in modo sicuro le variabili in ambienti concorrenti senza usare mutex. Ad esempio, il pacchetto sync/atomic fornisce funzioni per incrementare, confrontare e scambiare valori in modo atomico.

Esempio di incremento atomico di un contatore:

import (
    "fmt"
    "sync/atomic"
)

var counter int64

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

func main() {
    increment()
    fmt.Println(atomic.LoadInt64(&counter)) // Mostrerà 1
}

L'uso di operazioni atomiche aiuta a evitare condizioni di race durante l'uso di tipi di dati semplici, garantendo alte prestazioni senza blocchi.