• Amosヾ
    2025-05-26 来自广东
    倾向于使用第四种“原生 map[int]*UserInfo + sync.RWMutex”的方案,理由如下: 1、读多写少,sync.RWMutext比sync.Mutex性能更好 2、使用指针能避免在读操作时进行频繁的结构体复制 3、编写代码时相比sync.Map而言不用写冗余得断言逻辑
    
    
  • Fukans
    2025-05-25 来自北京
    1. 读多写少的场景,使用 sync.RWMutex 或 sync.Map 可以并发读,提高性能; 2. 用户信息是一个比较大的结构体,由于复制整个结构体会有性能损耗,所以使用 *UserInfo; 3. sync.Map 可以减小锁的粒度,进一步提高性能,可以选择 <方案5: sync.Map> 4. 如果对性能没特别高要求,也可以选择 <方案4:原生 map[int]*UserInfo + sync.RWMutex> 。一是操作更方便,不需要使用断言等,二是性能也不差。
    
    
  • 林龍
    2025-05-24 来自广东
    问一下白老师,这个课程很像白老师的书中的内容,两个变化大吗。书买了看了前几章节
    
    
  • 晚枫
    2025-05-24 来自四川
    多个 goroutine 读取、写入和覆盖不相交键集的条目。白老师,这个描述中的不相交键集如何理解?
    
    