0
点赞
收藏
分享

微信扫一扫

Java synchronized

残北 2022-03-14 阅读 87

有两种分类方法,根据修饰的对象不同,可以分为修饰代码块和修饰方法。根据锁的类型,可以分为对象锁和类锁。两种分类方法,两两组合,有四种用法。

对象锁类锁
修饰代码块synchronized (this|object){ }synchronized (A.class){ }
修饰函数public synchronized void fun(){}public static synchronized void fun(){}

Java每个对象中有一个内置锁,线程进入同步代码块或方法的时候会自动获得该锁,在退出同步代码块或方法时会释放该锁。获得内置锁的唯一途径就是进入这个锁的保护的同步代码块或方法。

java的对象锁和类锁在锁的概念上基本上和内置锁是一致的,但是对象锁作用在实例上面,而类所作用于所有的实例,属于静态的。

举报

相关推荐

0 条评论