我想从并发线程向Golang映射中添加新的键/值对。问题在于,如果地图中存在钥匙,我们就不会创建新的钥匙对。从多线程的角度来看,如何检查当前条件以及是否不存在键,请插入键-值。
另外,由于多种原因,我也不想使用sync.Map数据结构。我在考虑这种情况下的双重检查模式。
第一次遇到任何组织密码安全添加密钥的方法吗?
没有您需要正确的同步。
我建议结合使用sync.Map来存储键值和sync.Map在值内以执行一次性初始化。
sync.Map
这里是一个例子:
sync.Once