2013-11-14 25 views
58

我注意到Android Studio(運行時)始終使用超過100%的CPU,即使看起來沒有後臺進程IDE正在運行(索引等)。我可能會懷疑這是我的盒子特有的東西,但一些開發人員也遇到了這種情況。Android工作室在任何時候都使用> 100%的CPU - 沒有後臺進程似乎正在運行

通常情況下,CPU使用率處於高位100或200中位(請參見下面的屏幕截圖)。有沒有人遇到過這個呢?如果是這樣,那麼IDE中是否有任何策略或選項來糾正這種對系統資源的大量使用?

enter image description here

enter image description here

+2

我也遇到了同樣的問題,也是OS X. – slanecek

+1

我也在Windows 7上看到過這種情況,總是有80%以上的CPU使用率。 – Matt

+2

它甚至在我的小牛隊中達到了300%的CPU使用率。 (Android Studio 1.0.1) – neobie

回答

33

你可能會想嘗試在文件菜單 「節能」 選項。

+2

我遇到了與Android Studio相同的問題,但未使用IntelliJ IDEA 12.1.4。所以它似乎是一個Android Studio特有的問題,而不是IntelliJ本身。當我開始構建過程(使用maven)時,問題就開始了。 – bergvandenp

+0

到目前爲止,這在Windows上有所幫助 - 儘管我只是簡單地測試了一下,所以我不能說我是積極的,它會長期運行,而且如果沒有「Power Save」IDE在整個CPU ... – Matt

+1

更新:這有幫助,但它也似乎削弱IDE的一些功能(如自動完成,一些圖標已經消失,可能沒有實時git支持?) – Matt

24

你可能會考慮去文件>的Invalidate緩存/重啓 緩存可能會被踢了時髦的東西在後臺

enter image description here

+2

這個建議對我有幫助。謝謝! – Scrobot

7

我遇到無緣無故恆定的高CPU使用率。使緩存失效不起作用,節電模式也不起作用。

在我的情況下,'.git'目錄中有一個錯誤,導致android studio無法循環失敗。再次檢查回購解決了問題。

我的建議是檢查android studio日誌中是否有任何提示會導致它停滯不前。您也可以從終端啓動它並檢查Stdout/Stderr輸出。

+0

這就是我的情況。我爲git配置添加了一個別名,導致Android Studio無法使用。 – McP

+0

對我來說也是類似的情況。提交更改的文件並推送到回購站修復它。 – Simas

2

我開啓了Android Studio 1.0中的省電功能,但這意味着我選擇了Android Studio所提供的衆多功能。因此,我試圖找到更好的解決方案,我碰巧總是彈出一個對話框,並要求我增加虛擬機大小。顯然,一旦我增加了這一點,我就可以關閉節電功能,並讓我的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的系統變量

相應地增加這些數字。

  • Xmx指定Java虛擬機(JVM)的最大內存分配池。
  • Xms指定初始內存分配池。

即您的JVM將以Xms內存量啓動,並且將能夠使用最大Xmx內存量。

1

我在Linux上有完全相同的問題。通過增加內存大小來解決。

通過查看top -p <android studio pid> -H開始,它顯示哪些線程正在使用大多數CPU,對於我來說,有三個線程:94232,94233,94234。然後我做了jstack <pid>讓機器人工作室的堆棧轉儲,並查找0x17018(= 94232),它原來是"Gang worker#0 (Parallel CMD Threads)"。他們三個都是。顯然JVM總是忙着做GC。

還開JConsole的對我的機器人工作室的過程,它顯示GC時間「20 minutes」! (在內存選項卡的底部)

修正是更改studio.vmoptions(或studio64.vmoptions在我的情況),將-Xmx的值從默認值750m增加到1500m。這對我來說已經足夠了。如果你有太多的內存,設置到2G或4G或16克..

1

我想對我的Surface Pro 3由一個瘋狂的金額加快了以下程序和Android Studio

  1. 減少的的amountmemoryAndroid Virtual Devices你有。
  2. Invalidate Caches/Restart
  3. 轉到Power Save模式
  4. 關閉所有unnecessary files that are opened
  5. 減少你VM Heap Size左右256
3

有趣的是,對我來說這似乎是與版本控制集成。

我重新裝我的Android Studio項目解決了這個問題,當它被問及佈線了我的CVS鏈接(我不記得確切的字眼),我只是說「忽略」。之後,它順利運行,沒有拉CPU

1

在Windows上我減少了studio64.exe進程優先級和進程的關係設置核心的一半。 打開任務管理器,點擊進程選項卡,右鍵點擊進程studio64.exe,你會看到它在菜單中。

3

感謝Buzzrick(回答在此頁面上,可能在我的回答之上),他提到了CVS。關閉CVS的所有後臺操作似乎對高CPU使用率有巨大的影響 - 它是150%,現在是20%左右,或多或少。

我在OS X

轉到:首選項>版本控制>背景。現在在「後臺操作」下列出了6個選項。 我禁用這是前三選擇:

在背景上VCS進行更新, 執行承諾VCS的背景下, 進行結帳VCS背景。

+0

這在Linux(Ubuntu)中也很適合我。我只是禁用了所有的VCS後臺選項,並且佔用了CPU,現在它只佔用了不到2%的CPU。非常感謝! –

0

在我的情況下,我有white-listed Android-Studio的文件夾在"Eset Smart Security"並且問題解決了!

希望這有助於!

0

在Android工作室2.3,這種情況發生在「的Android監視器」窗口打開(在窗口顯示,從設備和仿真logcat的消息),然後按按Ctrl + F加利福尼亞+ F上 Mac)到顯示此窗口內的「查找」搜索欄

當您通過啓用了開發者模式的USB將三星手機連接到您的計算機時,也可能發生這種情況,因爲三星手機通常每秒向Logcat發送大量調試文本,即使Logcat窗口已關閉。

因此,爲了防止100%的CPU使用率的解決方案是:

關閉查找搜索欄,或完全隱藏窗口。

斷開一個三星手機,它散發出大量的調試消息。