atomic 使用场景简单
package main
import (
"fmt"
"sync/atomic"
"time"
)
func main() {
var total int32 =0
for i:=0; i<10; i++{
go func() {
for {
atomic.AddInt32(&total,1)
fmt.Println("total=%d",total)
time.Sleep(time.Millisecond)
}
}()
}
time.Sleep(2*time.Second)
fmt.Println("last total=%d",atomic.LoadInt32(&total))
}