![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
go面试知识点
文章平均质量分 95
鲤红蔷
这个作者很懒,什么都没留下…
展开
-
go并发编程相关
缺点:不适用于大量写的场景,这样会导致 read map 读不到数据而进一步加锁读取,同时dirty map也会一直晋升为read map,整体性能较差,甚至没有单纯的 map+metux 高。sync.Map底层使用了两个原生map,一个叫read,仅用于读;当一个或者多个 reader 持有锁的时候,竞争锁的 writer 会等待这些 reader 释放完,才可能持有这把锁。如果 Cond 等待队列中有一个或者多个等待的 goroutine,则清空所有等待的 goroutine,并全部唤醒。原创 2023-11-14 15:15:48 · 33 阅读 · 0 评论 -
golang面试题
map默认为非线程安全的, 并发读写会直接报 panic.原因: 多个 goroutine操作同一个 map的场景并不多, 设置为并发安全的会损失性能。原创 2023-11-01 08:07:57 · 59 阅读 · 1 评论