使用的 gcache 和 GORM 都是 Goroutine Safe 的,为什么写要加锁呢?

为什么 pipe 的 service 要使用 mutex 加锁

本贴最后更新于 213 天前,其中的信息可能已经时移世改

使用的 gcache 和 GORM 都是 Goroutine Safe 的,为什么写要加锁呢?

被采纳的回答
  • 88250

    1. 有一些数据加减操作,不同数据库事务隔离可能不同,加锁可以避免潜在问题
    2. 加锁是在性能需求允许情况下最简单的做法
    3. 没有多进程集群的需求,所以进程内存锁是最简单的实现

    大概就是这样考虑的,主要原因就是怕出错而做的最简化处理。

1 回帖
请输入回帖内容...
  • 88250

    1. 有一些数据加减操作,不同数据库事务隔离可能不同,加锁可以避免潜在问题
    2. 加锁是在性能需求允许情况下最简单的做法
    3. 没有多进程集群的需求,所以进程内存锁是最简单的实现

    大概就是这样考虑的,主要原因就是怕出错而做的最简化处理。