IDE가 실행중인 백그라운드 프로세스 (인덱싱 등)가없는 것처럼 보이는 경우에도 Android Studio (실행 중일 때)가 항상 100 % 이상의 CPU를 사용하는 것을 확인했습니다. 나는 이것이 내 상자에만 국한된 것이라고 생각할 수 있지만 일부 동료 개발자들도이 문제를 겪고 있습니다.
종종 CPU 사용량은 100 초 또는 200 초 중반입니다 (아래 스크린 샷 참조). 누구도 이것을 만났습니까? 그렇다면 IDE 내에 이러한 집중적 인 시스템 리소스 사용을 수정하기위한 전략이나 옵션이 있습니까?
답변
파일 메뉴에서 다음 옵션을 시도 할 수 있습니다.
- 파일 메뉴-> 캐시 무효화 / 다시 시작 …-> 무효화 및 다시 시작
- 파일-> 절전 모드 를 클릭하여 절전 모드 를 활성화합니다.
절전 모드는 코드 통찰력 및 백그라운드 작업 만 비활성화합니다.
답변
Buzzrick (이 페이지에서 대답, 아마도 내 대답 위에 답변) 덕분에 그는 VCS에 대해 언급했습니다. VCS의 모든 백그라운드 작업을 끄는 것은 높은 CPU 사용량에 큰 영향을 미치는 것처럼 보였습니다. 150 % 였지만 지금은 20 % 정도입니다.
OS X를 사용 중입니다.
이동 : 환경 설정> 버전 관리> 배경. 이제 ‘백그라운드 작업’에 6 가지 옵션이 나열됩니다. 처음 세 가지 옵션을 비활성화했습니다 .
백그라운드에서 VCS 업데이트 수행, 백그라운드에서 VCS 커밋 수행, 백그라운드에서 VCS 체크 아웃 수행
답변
파일> 캐시 무효화 / 다시 시작으로 이동하는 것을 고려할 수 있습니다. 캐시가 백그라운드에서 펑키 한 것을 시작할 수 있습니다.
답변
분명한 이유없이 지속적으로 높은 CPU 사용량을 발견했습니다. 캐시 무효화가 작동하지 않았고 절전 모드도 작동하지 않았습니다.
제 경우에는 ‘.git’디렉토리에 문제가있어서 안드로이드 스튜디오가 무한 루프에서 실패했습니다. repo를 다시 확인하면 문제가 해결되었습니다.
내 조언은 안드로이드 스튜디오 로그에서 그것이 흔들리는 원인에 대한 힌트를 확인하는 것입니다. 터미널에서 시작하여 Stdout / Stderr 출력을 확인할 수도 있습니다.
답변
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는 JVM (Java Virtual Machine)에 대한 최대 메모리 할당 풀을 지정합니다.
- Xms는 초기 메모리 할당 풀을 지정합니다.
즉, JVM은 Xms 양의 메모리로 시작되며 최대 Xmx 양의 메모리를 사용할 수 있습니다.
답변
Linux에서 똑같은 문제가 발생했습니다. 메모리 크기를 늘려 해결되었습니다.
top -p <android studio pid> -H
어떤 스레드가 대부분의 CPU를 사용 하고 있는지 보여주는 것으로 시작 하여 나에게는 94232,94233,94234의 세 개의 스레드가 있습니다. 그런 다음 jstack <pid>
android studio의 스택 덤프를 얻고 0x17018 (= 94232)을 찾으면 "Gang worker#0 (Parallel CMD Threads)"
. 세 가지 모두. 분명히 JVM은 항상 GC를 수행하는 데 너무 바쁩니다.
또한 내 안드로이드 스튜디오 프로세스에 대해 jconsole을 열었고 GC 시간 ” 20 minutes
“을 표시합니다 !!! (메모리 탭 하단)
수정은 -Xmx
기본 750m에서 1500m로 값 을 늘리기 위해 studio.vmoptions (또는 내 경우 studio64.vmoptions)를 변경하는 것 입니다. 나에게는 충분합니다. 메모리가 너무 많으면 2g 또는 4g 또는 16g로 설정합니다.
답변
흥미롭게도 이것은 버전 제어 통합과 관련이있는 것처럼 보였습니다.
내 Android 스튜디오 프로젝트를 다시로드하여이 문제를 해결하고 내 CVS 링크 연결에 대해 물었을 때 (정확한 문구가 기억 나지 않음) “무시”라고 말했습니다. 그 후 CPU를 당기지 않고 원활하게 실행