|      1mengzhuo      2016-03-22 21:51:17 +08:00 via iPhone 囧 碰到这样的的说明你的上层接口设计不当 所有需要锁的地方都要用统一的 get set | 
|  |      2bcxx      2016-03-22 21:58:40 +08:00 多用 interface ... | 
|  |      3elgoog1970      2016-03-22 22:10:27 +08:00 go is not java | 
|  |      4zonghua      2016-03-22 22:20:16 +08:00 @elgoog1970 让我又想到了递归命名法, go is not java `ginj` | 
|      5zyguan      2016-03-22 22:30:44 +08:00 如果你的实现不可避免的存在竞争条件,那加锁也没什么可耻的。而且加锁也不是非要在 getter/setter 上加,别套用 java 的 synchronized ,完全可以在相关逻辑代码中加,如果逻辑复杂多处竞争,那你就真该考虑优化优化设计了。另外,既然用 go ,那还是尽量多用 channel 少用共享可变量吧。 | 
|  |      6darasion OP |