gpt4 book ai didi

java - 使用SQLite内存数据库Java堆空间?

转载 作者:行者123 更新时间:2023-12-01 22:48:40 25 4
gpt4 key购买 nike

我开发了一个Eclipe RCP工具,它使用SQLite来存储大量元组。现在,我想了解使用 RAM、使用内存 SQLite 数据库与基于文件的数据库的区别。因此,我使用 JVisualVM 并通过 Trace 工具跟踪已使用的 Java 堆空间。在相同的条件下,我使用内存版本运行工具一次,使用基于文件的版本运行工具一次。

为了模拟基准,所有表总共包含超过 3000 万个元组,每个元组平均有 15 个元素。

我的期望是,内存版本比基于文件的版本使用更多的 Java 堆空间。但两者的痕迹看起来几乎相同,没有明显差异。两个 Java 堆空间具有相同的给定最大值,但它们从未达到该最大值。

因此,我的问题是,SQLite 是否使用 Java 堆空间作为内存数据库,还是位于内存的其他部分,而 JVisualVM 无​​法跟踪该部分?

不幸的是,我在互联网上找不到任何相关信息。只是它在内存中,而不是在内存中的位置。

谢谢!!

最佳答案

SQLite是一个原生库,不使用Java堆空间;它使用 native 堆。

关于java - 使用SQLite内存数据库Java堆空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24997934/

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