package main import ( "fmt" "sync" ) func main() { var mapInt = new(sync.Map) //add elem mapInt.Store(1, 1) mapInt.Store(2, 2) mapInt.Store(3, 3) fmt.Println("before delete key:") // iterator mapInt.Range(func(key, value interface{}) bool { fmt.Println(key, value) return true }) // del mapInt.Delete(2) fmt.Println("after delete key:") mapInt.Range(func(key, value interface{}) bool { fmt.Println(key, value) return true }) // query v, ok := mapInt.Load(1) if ok { fmt.Println(v) } // load or store v, ok = mapInt.LoadOrStore(2, 10) fmt.Println("load or store:", v, ", ok:", ok) } output: before delete key: 1 1 2 2 3 3 after delete key: 1 1 3 3 1 load or store: 10 , ok: false