gpt4 book ai didi

java - 在对象上同步

转载 作者:行者123 更新时间:2023-12-01 07:48:41 24 4
gpt4 key购买 nike

这种情况下有什么问题:

private static final Integer LOCK=0;
synchronized(LOCK){

//work
}

建议不要将其作为推荐的锁定监视器。

最佳答案

This is advised to be not a recommended monitor to lock on.

private static final Integer LOCK=0;

相同
private static final Integer LOCK=Integer.valueOf(0);

Integer.valueOf(0)cached by specification .

这意味着其他任何人也可以获取 Integer.valueOf(0) 并对其进行同步;因此您可能会遇到意外的争用(最好的情况)或死锁(最坏的情况)。

您可以使用new Integer(0),它不是缓存实例;或者只使用 new Object(),因为如果它仅用作监视器,那么它是一个 Integer 的事实是无关紧要的。

关于java - 在对象上同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43679082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com