Android Studio 生成多个 java 进程!如何在低内存机器上最小化其内存使用量?

Hum*_*Bee 5 java performance android android-studio

我在一台动力不足的机器上运行 Android Studio,当我监视 Android Studio 的内存消耗时,我注意到多个“java”进程,有些甚至在小时候分叉另一个进程,有些占用多达 1 GB!

这是正常行为还是配置错误的结果?

以及如何配置它以使用较少数量的 java 进程?

将项目的 JDK 和 Gradle 更改为外部安装的(更新版本)而不是使用 Android Studio 附带的那些有帮助吗?

Android Studio 和 Java 编译器内存使用情况

Hum*_*Bee 4

将 Java 编译器和 Gradle 限制为 512mb,并将 Gradle 更新为 Android Gradle 插件支持的最新版本,这在一定程度上解决了高内存使用问题,现在只注意到最多 3 个 java 进程,每个进程大约 512mb。

对于任何好奇的人,这些是我使用的标志:

Android Studio 自定义 VM 选项:

-Xms512m
-Xmx512m
-XX:+UseCompressedOops
-XX:+HeapDumpOnOutOfMemoryError
Run Code Online (Sandbox Code Playgroud)

gradle.属性:

org.gradle.jvmargs = -Xms512m -Xmx512m -XX:+UseCompressedOops -XX:+HeapDumpOnOutOfMemoryError
Run Code Online (Sandbox Code Playgroud)

将堆的起始大小和最大大小修复为 512mb,以避免重新计算。感谢所有回答的人。

2020 年 11 月 25 日更新:当 Android Studio 设置为使用外部 Gradle安装以及外部 JDK安装时,该问题似乎更加明显。当 Android Studio 设置为使用内部 JDK 和 Gradle 时,IDE 和 Gradle Worker 都依赖于一个Java 进程,但当它们在外部工作时,它们会生成自己的 Java 进程,并且无法相互通信。PS:我确实升级到了更强大的机器,构建速度更快、更流畅。