synchronized实现何时使用了自旋锁还是互斥锁

 我来答
老调说的音5
2016-09-24 · TA获得超过270个赞
知道小有建树答主
回答量:116
采纳率:100%
帮助的人:93.7万
展开全部
synchronized的锁是针对多线程的,从线程的角度去思考才伏迅伍能真正弄明白。

Java的synchronized使用方法总结
1. 把synchronized当作函数修饰符时
这也就是同步方法,那这时synchronized锁定的是哪个对象呢?它锁定的是调用这个同步方法昌陆对象。也就是说,当一个对象P1在不同的线程中执行这个同步方法时,它们之间会形成互斥,达到同步的效果。但是这个对象所属的Class所产生的另一对象P2却可以任意调用这个被加了synchronized关键字的方法。
同步块,示例代码如下:
public void method3(SomeObject so)
{
synchronized(so)
{
//…..
}
}
这时,锁就是so这个对象,谁拿到这个锁谁就可以运行它所控制的缺或那段代码。当有一个明确的对象作为锁时,就可以这样写程序,但当没有明确的对象作为锁,只是想让一段代码同步时,可以创建一个特殊的instance变量(它得是一个对象)来充当锁。
3.将synchronized作用于static 函数,示例代码如下:
Class Foo
{
public synchronized static void methodAAA() // 同步的static 函数
{
//….
}
public void methodBBB()
{
synchronized(Foo.class) // class literal(类名称字面常量)
}
}
代码中的methodBBB()方法是把class literal作为锁的情况,它和同步的static函数产生的效果是一样的,取得的锁很特别,是当前调用这个方法的对象所属的类(Class,而不再是由这个Class产生的某个具体对象了)。
佛山市力士达电锁厂
2023-06-12 广告
阴极锁是门禁系统的配套产品,一般情况下安装在门框上,用于锁住机械锁舌。它可广泛适用于办公大楼、木门、不锈钢门、消防门、小区出入口大门,与阳极机械锁或球形锁配套使用。 阴极锁的工作原理和阳极锁(电插锁)相似。阴极锁和阳极锁相比阴极锁的使用范围... 点击进入详情页
本回答由佛山市力士达电锁厂提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式