EntityManager 是否持有对分离实体的引用?
Does an EntityManager hold references to detached entities?
运行 在使用 JPA (Hibernate) 时存在一些内存限制 我正在寻找有关 EntityManager 如何处理分离实体的信息,尤其是他是否保留对它们的任何强引用。
我正在搜索一般 JPA 文档以及 Hibernate 文档,但找不到任何具体信息?从我得到的 EntityManager.clear() 将分离所有实体并使它们可用于垃圾收集。这是否意味着从 EntityManager 中分离实体使其可用于垃圾收集器?如果不是,如何使由 Entitymanager 管理的特定实体可用于 GC?
分离的实体未被 Hibernate 引用。如果被托管实体实例引用,可能会被Hibernate间接引用,但是清除session后,就没有托管实例了。
实际上,清除会话以释放内存是 batch processing 的官方记录模式。
运行 在使用 JPA (Hibernate) 时存在一些内存限制 我正在寻找有关 EntityManager 如何处理分离实体的信息,尤其是他是否保留对它们的任何强引用。
我正在搜索一般 JPA 文档以及 Hibernate 文档,但找不到任何具体信息?从我得到的 EntityManager.clear() 将分离所有实体并使它们可用于垃圾收集。这是否意味着从 EntityManager 中分离实体使其可用于垃圾收集器?如果不是,如何使由 Entitymanager 管理的特定实体可用于 GC?
分离的实体未被 Hibernate 引用。如果被托管实体实例引用,可能会被Hibernate间接引用,但是清除session后,就没有托管实例了。
实际上,清除会话以释放内存是 batch processing 的官方记录模式。