gpt4 book ai didi

java - 澄清 Object 类中的 finalize() 方法

转载 作者:搜寻专家 更新时间:2023-11-01 02:45:22 24 4
gpt4 key购买 nike

如果有人能正确澄清 javadoc 中 Object 类中 finalize() 方法的两点,将会很有帮助:

1. It is guaranteed, however, that the thread that invokes finalize will not be holding any user-visible synchronization locks when finalize is invoked.

“用户可见”同步的意义是什么?除了“用户可见”之外还有其他同步吗?

2. The finalize method is never invoked more than once by a Java virtual machine for any given object.

在这种情况下,JVM 必须维护每个曾经创建的对象的唯一标识,以及调用其 finalize 方法的信息。它最终不会超出其存储的任何区域吗?

最佳答案

What is the significance of 'user-visible' synchronization?

锁定您可以从 Java 代码访问。

Are there any other synchcronization apart from 'user-visible'?

是的,JVM 内部有锁供其使用。

JVM must maintain unique identity of each and every object ever created vs the information that its finalize method has been invoked.

对象是否已经完成,存储在头部。对象没有全局 ID。它唯一的独特之处在于对对象本身的引用。

Wouldn't it ultimately grow beyond whatever region it is stored in ?

这个空间是在创建对象时分配的。

更多信息Object resurrection in Java

关于java - 澄清 Object 类中的 finalize() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23359753/

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