golang 中map并发读写操作
来源:互联网 发布:php实现字符串反转 编辑:程序博客网 时间:2024/05/25 18:10
go中map并发使用是不安全的,当你使用goroutine同时对一个map进行读写操作时,不确定会发生什么(由于读写执行顺序不确定造成的).针对这种情况,我们要添加读写锁对sync.RWMutex
其进行同步.
var counter = struct{ sync.RWMutex m map[string]int}{m: make(map[string]int)}
从counter读取数据,使用读锁
counter.RLock()n := counter.m["some_key"]counter.RUnlock()fmt.Println("some_key:", n)
向counter写数据,使用写锁
counter.Lock()counter.m["some_key"]++counter.Unlock()
参考:http://blog.golang.org/go-maps-in-action
0 0
- golang 中map并发读写操作
- golang 中map并发读写
- golang中map并发读写问题及解决方法
- golang中对map操作类
- golang中对map操作类
- golang中map的坑
- Golang 中使用多维 map
- golang中并发sync和channel
- golang中并发sync和channel
- golang中并发sync和channel
- golang中并发sync和channel
- golang中并发sync和channel
- golang判断key是否在map中
- golang中map声明及初始化
- golang并发
- golang 并发
- golang Map
- golang-Map
- 第十六周 问题 C: 相同的数字!
- MD5算法 Java类
- Hibernate中load和get方法区别
- 7款Android开发者常用的Android UI组件
- 【Linux】-h 和查找最大文件
- golang 中map并发读写操作
- 虚拟化平台网桥配置与使用
- cocos2dx TinyXml2的使用
- linux 安装 maven
- 瑞柏匡丞揭秘:互联网思维创业为什么可以成功?
- 《编码:隐匿在计算机软硬件背后的语言》 读书笔记 03
- 《深入理解Java虚拟机》读书笔记3——类文件结构
- FBReader阅读器各源码作用和知识点分析
- 淮北濉溪县丨治前列腺炎到哪家医院比较好