作者回复: 👍
作者回复: 改了就改了,读的数据是正确的一致的就可以了。如果这个规则不满足业务需求,可以总互斥锁。不同的锁用不同地方。
作者回复: 两种场景,如果处理业务需要保持互斥,那么就用互斥锁,如果不需要保持互斥才可以用读写锁。一般来讲缓存是不需要保持互斥性的,能接受瞬间的不一致
作者回复: 👍
作者回复: 内部实现里while循环里面对中断的处理有点问题
作者回复: 使用final是个好习惯
作者回复: 乐观读升级到悲观读,就和ReadWriteLock一样了。
作者回复: 👍
作者回复: 👍,有空我也学习一下😄
作者回复: 读写是互斥的
作者回复: stamp和ws没关系,tryConvertToWriteLock(stamp)这个方法内部会释放悲观读锁stamp(条件是能够升级成功)。所以我们需要释放的是ws
作者回复: 就是等一会儿,保证前面的子线程已经启动包
作者回复: 这个我回答不了😂