规范上:建议使用共享资源作为锁对象
对于实例化方法建议使用this作为锁对象
对于静态方法,建议使用字节码(类名.class)对象作为锁对象
第二种方法:同步方法
那么同步代码块和同步方法哪个好一点呢?
答案是:同步代码块
因为同步代码块锁的范围更小一点,同步方法锁的范围更大一点
但其实在现实中同步方法用的更多一点,因为代码简洁好写一点,更方便
第三种方法:Lock锁
JDK5后出现,更加灵活方便
Lock是接口不能直接实例化,我们需要采用它的实现类ReentrantLock来构建Lock锁对象
到此这篇关于Java使用线程同步解决线程安全问题详解的文章就介绍到这了,更多相关Java线程同步内容请搜索七叶笔记以前的文章或继续浏览下面的相关文章希望大家以后多多支持七叶笔记!