高并发编程系列:4种常用Java线程锁的特点,性能比较、使用场景
http://youzhixueyuan.com/4-kinds-of-java-thread-locks.html
在Java并发编程中,经常遇到多个线程访问同一个 共享资源 ,这时候作为开发者必须考虑如何维护数据一致性,这就是Java锁机制(同步问题)的来源。
Java提供了多种多线程锁机制的实现方式,常见的有:
- synchronized
- ReentrantLock
- Semaphore
- AtomicInteger等
每种机制都有优缺点与各自的适用场景,必须熟练掌握他们的特点才能在Java多线程应用开发时得心应手。
4种Java线程锁(线程同步)
1.synchronized
在Java中synchronized关键字被常用于维护数据一致性。
synchronized机制是给共享资源上锁,只有拿到锁的线程才可以访问共享资源,这样就可以强制使得对共享资源的访问都是顺序的。
Java开发人员都认识synchronized,使用它来实现多线程的同步操作是非常简单的,只要在需要同步的对方的