多线程并发锁,优化过程


系统公共模块重复读取数据库,如:产品分类导航。使用简单代码模拟缓存方式。

经过三次修改优化过程,方便小伙伴阅读。


一、增加缓存方法:
多线程并发锁,优化过程_第1张图片
 
二、经测试,方法同步,造成锁粒度过大,优化如下:
多线程并发锁,优化过程_第2张图片
 
三、synchronized 如存在并发,导致多次初始化。
改为Lock,二次判断,并发初始化时排队机制,后者线程可避免初始化。
多线程并发锁,优化过程_第3张图片
 


你可能感兴趣的:(笔记)