发布时间:2024-11-22 00:09:31
示例代码:
import "sync"
var m map[string]int
var lock sync.Mutex
func main() {
m = make(map[string]int)
// 设置值
lock.Lock()
m["key"] = 1
lock.Unlock()
// 获取值
lock.Lock()
value := m["key"]
lock.Unlock()
// ...
}
示例代码:
import "sync"
var m map[string]int
var rwLock sync.RWMutex
func main() {
m = make(map[string]int)
// 读操作
rwLock.RLock()
value := m["key"]
rwLock.RUnlock()
// 写操作
rwLock.Lock()
m["key"] = 1
rwLock.Unlock()
// ...
}
示例代码:
import "sync"
var m sync.Map
func main() {
// 写操作
m.Store("key", 1)
// 读操作
value, ok := m.Load("key")
if ok {
// ...
}
// ...
}