93

IDE が実行しているバックグラウンド プロセス (インデックス作成など) がないように見えても、Android Studio (実行中) が常に 100% を超える CPU を使用していることに気付きました。これは私のボックスに特有のものだと思うかもしれませんが、仲間の開発者もこれに遭遇しています.

多くの場合、CPU 使用率は 100 代後半または 200 代半ばです (以下のスクリーンショットを参照)。誰もこれに遭遇しましたか?もしそうなら、IDE 内にこのシステム リソースの集中的な使用を修正するための戦略またはオプションはありますか?

ここに画像の説明を入力

ここに画像の説明を入力

4

12 に答える 12

52

ファイル メニューで次のオプションを試すことができます。

  1. ファイル メニュー -> キャッシュの無効化 / 再起動... -> 無効化して再起動
  2. [ファイル] -> [省電力モード] をクリックして、省電力モードを有効にします。

省電力モードでは、コード インサイトとバックグラウンド タスクのみが無効になります。

于 2013-11-24T16:22:09.473 に答える
6

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

それに応じてこれらの数値を増やしてください。

  • Xmx は、Java 仮想マシン (JVM) の最大メモリ割り当てプールを指定します。
  • Xms は、初期メモリ割り当てプールを指定します。

つまり、JVM は Xms 量のメモリで起動され、最大 Xmx 量のメモリを使用できるようになります。

于 2015-07-07T15:07:11.780 に答える
4

Linuxでもまったく同じ問題がありました。メモリサイズを増やすことで解決しました。

どのスレッドが CPU を最も多く使用しているかを示す を調べることから始めましたtop -p <android studio pid> -H。私には、94232、94233、94234 の 3 つのスレッドがあります。次にjstack <pid>、android studio のスタック ダンプを取得するために a を実行し、0x17018 (=94232) を探します"Gang worker#0 (Parallel CMD Threads)"。3つすべて。明らかに、JVM は常に GC を実行するのに忙しすぎます。

また、私のAndroidスタジオプロセスに対してjconsoleを開いたところ、GC時間が表示されました " 20 minutes"!!! (メモリタブの下部にあります)

修正するには、studio.vmoptions (または私の場合は studio64.vmoptions) を変更して、-Xmx値をデフォルトの 750m から 1500m に増やします。私には十分です。メモリが多すぎる場合は、2g または 4g または 16g に設定します。

于 2015-07-29T20:44:03.620 に答える
3

私は次の手順を試してみましたAndroid Studioが、Surface Pro 3非常に高速になりました。

  1. amountあなたが持っているのとmemoryを減らしAndroid Virtual Devicesます。
  2. Invalidate Caches/Restart
  3. Power Saveモードに移動
  4. すべて閉じるunnecessary files that are opened
  5. VM Heap Sizeを約 に減らします256
于 2015-08-06T19:20:29.543 に答える
2

Windows では、studio64.exe プロセスの優先順位を下げ、プロセスのアフィニティをコアの半分に設定しました。タスク マネージャーを開き、[プロセス] タブをクリックし、プロセス studio64.exe を右クリックすると、メニューに表示されます。

于 2016-04-14T20:44:09.917 に答える