Java对象锁与类锁

简介

提到多线程肯定会牵扯到锁的概念,其中对象锁和类锁提的最多,但是一直以来我都没有注意到类锁,今天就主要针对类锁做一个简单的介绍。

对象锁和类锁的区别

一个类在使用之前一般需要new一个对象,然后使用,但是这个不是必须的,也有一种通过static定义的属性或者方法可以用类名直接调用,这两者的具体区别去看相关的Java基础,如果你对这个不清楚,建议暂时放弃学习多线程,先巩固基础再去学习高级的东西,否则学起来很比较累而且效率也低。

所谓的对象锁就是以new出来的对象作为锁,而类锁就是以类加载之后形成的Class作为锁,虽然类锁相对于对象锁更加底层,但是这两者是单独存在,锁之间不受影响。

类锁与对象锁作用范围不同,类锁作用于所有对象,所有调用对象资源的线程竞争同一个类锁;对象锁作用于当前对象,多个线程只需要在当前对象中竞争需要的资源。

具体的代码演示就不做了,网上相关博客很多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值