我注意到Android Studio(运行时)始终使用超过100%的CPU,即使看起来没有IDE正在运行的后台进程(索引等)。我可能怀疑这是我的盒子特有的东西,但是一些开发人员也遇到了这个问题。
CPU使用率经常处于高100或200年代(见下面的屏幕截图)。有没有人遇到过这个?如果是这样,IDE中是否有任何策略或选项来纠正系统资源的这种密集使用?
答案 0 :(得分:41)
您可以在文件菜单中尝试以下选项:
省电模式仅禁用代码洞察和后台任务。
答案 1 :(得分:29)
您可以考虑转到文件>使高速缓存/重新启动无效 你的缓存可能会在背景中开启一些时髦的东西
答案 2 :(得分:22)
感谢 Buzzrick (在本页回答,可能在我的回答之上),他提到了VCS。关闭VCS的所有后台操作似乎对高CPU使用率产生巨大影响 - 它是150%,现在是20%,或多或少。
我在OS X
转到:首选项>版本控制>背景。现在列在“后台操作”下的是6个选项。 我停用了前三个选项:
在后台执行VCS更新, 在后台执行对VCS的提交, 在后台执行结帐到VCS。
答案 3 :(得分:11)
我遇到了一个持续的高CPU使用率,没有明显的原因。无效缓存不起作用,也没有省电模式。
在我的情况下,' .git'出现了问题。导致android studio在无限循环中失败的目录。再次签出回购修复了问题。
我的建议是检查android studio日志中是否有任何提示导致它失败的原因。您也可以从终端启动它并检查Stdout / Stderr输出。
答案 4 :(得分:3)
我在Android Studio 1.0中启用了省电功能,但这意味着我选择了Android Studio提供的众多功能。因此,我试图找到一个更好的解决方案,我碰巧弹出一个对话框,并要求我增加我的VM大小。显然,一旦我增加了这个,我就可以关闭省电并让我的Android Studio完美运行。
这是怎么做的:
在Mac OS上转到/Applications/Android\ Studio.app/Contents/bin/studio.vmoptions
(要打开内容,请右键点击Android Studio应用>查看内容)
您将找到以下变量
-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops
在Windows上转到环境变量并找到名为_JAVA_OPTIONS
相应地增加这些数字。
即你的JVM将以Xms的内存量启动,并且能够使用最大的Xmx内存量。
答案 5 :(得分:3)
我在Linux上遇到了同样的问题。通过增加内存大小来解决。
通过查看显示哪些线程正在使用大部分CPU的top -p <android studio pid> -H
开始,对我来说有三个线程:94232,94233,94234。然后我做一个jstack <pid>
来获取android studio的堆栈转储,并查找0x17018(= 94232),结果是"Gang worker#0 (Parallel CMD Threads)"
。他们三个。显然JVM一直忙着做GC。
还针对我的android studio进程打开了jconsole,它显示了GC时间“20 minutes
”!!! (在内存标签的底部)
修复是更改studio.vmoptions(或我的情况下为studio64.vmoptions),将-Xmx
值从默认值750m增加到1500m。这对我来说已经足够了。如果你有太多的记忆,设置为2g或4g或16g ..
答案 6 :(得分:3)
有趣的是,对我而言,这似乎与版本控制集成有关。
我通过重新加载我的android工作室项目修复此问题,当它询问有关连接我的CVS链接时(我不记得确切的措辞),我只是说&#34;忽略&#34;。之后它运行顺利而不会拉CPU
答案 7 :(得分:1)
我尝试了以下程序,并Android Studio
在我的Surface Pro 3
上加了一个疯狂的数量:
amount
的{{1}}和memory
。Android Virtual Devices
Invalidate Caches/Restart
模式Power Save
。unnecessary files that are opened
缩减到VM Heap Size
左右。答案 8 :(得分:1)
在Windows上,我减少了studio64.exe进程优先级,并将进程的亲和性设置为一半核心。 打开任务管理器,单击进程选项卡,右键单击process studio64.exe,您将在菜单中看到它。
答案 9 :(得分:0)
就我而言,white-listed
中有"Eset Smart Security"
个Android-Studio文件夹,问题解决了!
希望这有帮助!
编辑:
在HIPS
中停用Eset settings
对我的情况也有帮助!
答案 10 :(得分:0)
在Android Studio 2.3上,当&#34; Android Monitor&#34; 窗口打开时(窗口显示来自设备和模拟器的Logcat消息),然后按 Ctrl + F (Mac上的 Cmd + F )显示&#39;查找&#39;此窗口内的搜索栏。
当您通过启用了开发者模式的USB将三星手机连接到计算机时也会发生这种情况,因为三星手机通常会每秒向Logcat发送大量调试文本,即使Logcat窗口已关闭。 / p>
因此,防止100%CPU使用的解决方案是:
关闭“查找”搜索栏,或完全隐藏窗口。
或
断开正在发送大量调试信息的三星手机。
或
升级到Android Studio 3,此错误不会发生。
答案 11 :(得分:0)
我暂时搁置了这个问题,因为随着时间的推移,这里的同事和张贴者已经在各种解决方案中找到了价值。对我自己而言,仅更新Android Studio就解决了这个问题(几个月后,这里没有任何解决方案对我有用)。