2016 - 2024

感恩一路有你

synchronized使用方式 java问题,synchronized(),里面为什么要带参数?

浏览量:3024 时间:2021-03-11 12:28:21 作者:admin

java问题,synchronized(),里面为什么要带参数?

有三种常见的同步方法。第一种是修改静态方法,即静态方法是同步方法。简而言之,如果一个线程现在调用这个方法,其他人就不能再调用它了。

其次,修改一个公共方法,以指示同一实例的方法只能依次调用。

第三个是您所说的参数,即锁定对象。

要准确解释它的作用并不容易。在大多数情况下,添加对象锁是为了安全地操作对象。有些人可能只是把对象当作锁。同步执行器不操作对象。

其实,你可以先理解同步的含义,然后慢慢体会剩下的。

例如:假设有许多人想要修改文本文件。当没有锁机制时,很可能很多人同时修改一个文本,并且会出现混乱。这个变化包含在那个变化中,以此类推。

如果使用锁,则可以避免。当每个人都开始修改时,先锁定,修改后再释放锁。每次只允许一个人修改。

java synchronized锁对象,当对象引用是null的时候,锁的是什么?

谢谢

!Java语言规范明确指出,如果锁定的对象为null,则会发生NullPointerException。规范的内容如下:

表达式的类型必须是引用类型,否则会发生完全时间错误。首先计算表达式,执行同步语句。然后:如果表达式的求值由于某种原因完全完成,那么synchronized语句也会因为同样的原因突然完成。否则,如果表达式的值为null,则抛出NullPointerException。

synchronized使用方式 java可重入锁有哪些 synchronized详解

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。