Sobes.tech
Junior — Middle

Използвали ли сте атомарни операции в проектите си?

sobes.tech AI

Отговор от AI

В Go, атомарните операции се използват за безопасна промяна на променливи в конкурентна среда без използване на мьютекси. Например, пакетът sync/atomic предоставя функции за атомарно увеличаване, сравняване и замяна на стойности.

Пример за атомарно увеличаване на брояч:

import (
    "fmt"
    "sync/atomic"
)

var counter int64

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

func main() {
    increment()
    fmt.Println(atomic.LoadInt64(&counter)) // Ще изведе 1
}

Използването на атомарни операции помага да се избегнат състезателни условия при работа с прости типове данни, осигурявайки висока производителност без блокировки.