我有一个应用程序,它在 Mac OS X 上使用这个jdbc 驱动程序将一些数据(80k 元组中大约 15mb)写入 SQLite 数据库。这是使用事务完成的,其中最大的事务包含大约 45k 插入到一个表中。在分析应用程序时,有几件事情看起来很奇怪:
- 如果我在开始时使用 暂停应用程序
System.in.read()
,则进程分配的内存会保持缓慢增长。这是为什么? - 当应用程序运行时,在 VisualVM 监视器中使用的堆空间总是在 80mb 左右。但是,在分析内存使用情况时,我总共得到大约 10mb。谁能解释这个区别?
谢谢你的帮助。