同步代码块和锁是Java并发编程中最最核心的概念,也是最容易让读者迷惑的地方,一些有了一些开发经验的用户,可能对此也没有彻底的理解。在本章中,我们将会详细的讲解每一个知识点,以最简化的方式,帮助读者理解每一个概念,并介绍相关术语。
同步和锁的概念,主要是为了解决多线程共享资源的问题。下一节会有案例演示。
java中的同步用synchronized
关键字表示,根据出现的位置不同,又可以分为:
实例方法同步
静态方法同步
实例方法中同步块
静态方法中同步块
而锁
的概念就更多了,包括:
隐式锁
对象锁
类锁
私有锁
可重入锁
死锁
活锁
公平锁
轻量级锁
偏向锁
自旋锁
排他锁(胡扯锁)
共享锁
....
概念很多,但是不要害怕,大部分也仅仅就是概念而已。相信通过本章的讲解,你将会明白每一种的锁的含义和实际用途。