go - 在 Go 中,我们可以使用每个键的锁来同步映射的每个键吗?

标签 go concurrency mutex

在 Go 中,我们可以使用每个键的锁来同步映射的每个键吗? map 级全局锁总是需要的吗? 文档说对 map 的任何访问都不是线程安全的。但是,如果有 key ,那么它是否可以单独锁定?

最佳答案

不完全是,但如果您只是从 map 上读取指针并修改引用对象,那么您并没有修改 map 本身。

关于go - 在 Go 中,我们可以使用每个键的锁来同步映射的每个键吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40560007/

相关文章:

hash - 如何在Go中实现HashCash的算法(类型转换问题)?

concurrency - 在 Rust 中实现 MultiplexStream

c - 如何修复我的 pthread 代码遇到的此错误?

c - 如何强制一个线程在另一个线程之前启动?

c - 共享缓冲区和同步编程的问题

go - 如何断言一个空接口(interface)回到我的自定义类型的一部分?

Docker build 如何在golang build中添加库

go - 在 `go install package` 期间创建一些二进制文件

scala - 使用 future 时程序不会终止

java - 处理线程最大执行时间的最佳方法(在 Java 中)