Go 每日一库之 gjson

简介 之前我们介绍过gojsonq,可以方便地从一个 JSON 串中读取值。同时它也支持各种查询、汇总统计等功能。今天我们再介绍一个类似的库gjson。在上一篇文章Go 每日一库之 buntdb中我们介绍过 JSON 索引,内部实现其实就是使用gjson这个库。gjson实际上是get + json的缩写,用于读取 JSON 串,同样的还有一个sjson(set + json)库用来设置 JSON 串。 快速使用 先安装: $ go get github.com/tidwall/gjson 后使...阅读全文

2020-03-29 10:32:34 darjun
阅读:808 评论:0

学习sync.Map的总结

**学习原因** 1、golang面试中可能会遇到 2、之前看过sync.Map的源码,但是记忆很模糊了,重新温习下 **源码分析** 1、设计思想:个人理解是读写分离,在读多写少的情况下,效率较高。 2、源码阅读 ``` 结构体 type Map struct { mu Mutex // read是原子类型。读取数据时,可以不加锁。 // 更新数据时,通过cas不加锁更新read中存在的数据。 read atomic.Val...阅读全文

2021-07-08 12:52:00 tjudqx
阅读:1495 评论:0