悲观锁 synchronized
关键字是并发编程中线程同步的常用手段之一,其作用有三个:
- 互斥性:确保线程互斥的访问同步代,锁自动释放,多个线程操作同个代码块或函数必须排队获得锁,
- 可见性:保证共享变量的修改能够及时可见,获得锁的线程操作完毕后会将所数据刷新到共享内存区
- 有序性:有效解决重排序问题
synchronized
用法有三个:
- 修饰实例方法
- 修饰静态方法
- 修饰代码块
1. 修饰实例方法
synchronized
关键词作用在方法的前面,用来锁定方法,其实默认锁定的是this
对象。
public class Thread1 implements Runnable