Android studio luôn sử dụng> 100% CPU - không có quá trình nền nào dường như đang chạy


86

Tôi đã nhận thấy Android Studio (khi chạy) luôn sử dụng CPU lớn hơn 100%, ngay cả khi nó xuất hiện không có quy trình nền nào mà IDE đang chạy (lập chỉ mục, v.v.). Tôi có thể nghi ngờ đây là một cái gì đó cụ thể cho hộp của tôi, nhưng một số nhà phát triển đồng nghiệp cũng đang gặp phải điều này.

Thông thường, thời gian sử dụng CPU ở mức cao 100 hoặc giữa 200 (xem ảnh chụp màn hình bên dưới). Có ai gặp phải điều này không? Nếu vậy, có bất kỳ chiến lược hoặc tùy chọn nào trong IDE để điều chỉnh việc sử dụng nhiều tài nguyên hệ thống này không?

nhập mô tả hình ảnh ở đây

nhập mô tả hình ảnh ở đây


6
Tôi đã có cùng một vấn đề, cũng OS X.
slanecek

2
Tôi cũng đã thấy điều này trên Windows 7, luôn sử dụng CPU trên 80%.
Matt

4
Nó thậm chí còn đạt mức sử dụng cpu 300% trong Mavericks của tôi. (Android Studio 1.0.1)
neobie

kiểm tra xem bạn đã tải xuống bất kỳ plugin nào gần đây chưa. Tôi đã tải xuống DevEcoplugin và gỡ cài đặt đã khắc phục được sự cố. Có lẽ nó đang thực hiện rất nhiều nhiệm vụ nền.
NullByte08

Câu trả lời:


50

Bạn có thể thử các tùy chọn sau trong Menu Tệp:

  1. Menu Tệp -> Vô hiệu hoá bộ nhớ cache / Khởi động lại ... -> Vô hiệu hoá và Khởi động lại
  2. Bật Chế độ tiết kiệm điện bằng cách nhấp vào Tệp -> Chế độ tiết kiệm điện

Chế độ Tiết kiệm điện chỉ vô hiệu hóa thông tin chi tiết về mã và các tác vụ nền.


4
Tôi sắp hết hạn sự cố tương tự với Android Studio, nhưng không phải với IntelliJ IDEA 12.1.4. Vì vậy, nó có vẻ là một vấn đề cụ thể của Android Studio, không phải chính IntelliJ. Sự cố bắt đầu khi tôi bắt đầu quá trình xây dựng (sử dụng maven).
bergvandenp

2
Cập nhật: Điều này giúp, nhưng nó cũng dường như làm tê liệt một số các chức năng của IDE (như tự động hoàn tất, và một số biểu tượng đã biến mất, có lẽ không có thời gian thực hỗ trợ git?)
Matt

1
Với phiên bản Android Studio v5 + gần đây, tính năng tự động hoàn tất hoạt động ở chế độ Tiết kiệm năng lượng.
muneikh

1
Điều này làm cho mọi thứ tốt hơn, nhưng không thực sự thiết thực vì nó vô hiệu hóa quá nhiều tính năng tôi sử dụng.
idanakav

1
Chế độ tiết kiệm pin vẫn có sẵn trong Android Studio 3.1 và đã được cải thiện so với các phiên bản trước đó.
muneikh

48

Cảm ơn Buzzrick (đã trả lời trên trang này, có lẽ ở trên câu trả lời của tôi), anh ấy đã đề cập đến VCS. Việc tắt tất cả các hoạt động nền của VCS dường như có tác động rất lớn đối với việc sử dụng cpu cao - nó là 150% và bây giờ là 20%, nhiều hơn hoặc ít hơn.

Tôi đang sử dụng OS X

Đi tới: Tùy chọn> Kiểm soát Phiên bản> Nền. Bây giờ được liệt kê trong 'Hoạt động nền' là 6 tùy chọn. Tôi đã tắt ba tùy chọn đầu tiên là:

Thực hiện cập nhật VCS ở chế độ nền, Thực hiện cam kết với VCS ở chế độ nền, Thực hiện kiểm tra đối với VCS ở chế độ nền.


Điều này cũng rất hiệu quả đối với tôi trong Linux (Ubuntu). Tôi vừa vô hiệu hóa tất cả các tùy chọn nền VCS và không làm hỏng CPU, bây giờ nó chỉ sử dụng ít hơn 2% trong số đó. Cảm ơn nhiều!
Fran Marzoa

3
Đây là một cải tiến MASSIVE đối với tôi. Bộ nhớ đệm không hợp lệ chỉ làm được rất nhiều, nhưng tôi vẫn thường xuyên thấy trên 100% cho AS và java (hơn 300% khi xây dựng!), Và bây giờ nó ở các chữ số đơn lẻ. Tôi đang sử dụng AS 3.4.1, fyi.
pdub

Tôi dường như không thể tìm thấy menu "Nền" này. Tôi thực hiện tìm kiếm trong Cài đặt nhưng nó sẽ không hiển thị, nhưng khi tôi thực hiện Tìm kiếm tất cả thông qua các phím Shift, tôi có thể thấy chúng, nhưng nhấp vào chúng sẽ dẫn tôi đến đâu cả. Nó có thể bị vô hiệu hóa?
John Ernest Guadalupe

Sẽ có một tab 'Nền' được liệt kê trong 'Kiểm soát Phiên bản' trong cài đặt.
Miguel P.

Miguel, nếu tôi chưa kết hôn (và một chàng trai), tôi sẽ đề nghị có đứa con yêu của bạn. Cảm ơn!
Jason

33

Bạn có thể cân nhắc chuyển đến Tệp> Vô hiệu hóa bộ nhớ cache / Khởi động lại Bộ nhớ cache của bạn có thể đang khởi động một cái gì đó thú vị trong nền

nhập mô tả hình ảnh ở đây


12

Tôi gặp phải tình trạng sử dụng cpu cao liên tục mà không có lý do rõ ràng. Bộ nhớ cache không hợp lệ không hoạt động cũng như không có chế độ tiết kiệm năng lượng.

Trong trường hợp của tôi, đã xảy ra lỗi trong thư mục '.git' khiến android studio bị lỗi trong một vòng lặp vô tận. Kiểm tra lại repo đã khắc phục sự cố.

Lời khuyên của tôi là kiểm tra nhật ký studio android để biết bất kỳ gợi ý nào về nguyên nhân khiến nó bị chùn bước. Bạn cũng có thể khởi động nó từ terminal và kiểm tra đầu ra Stdout / Stderr.


Đây là trường hợp của tôi. Tôi đã thêm bí danh vào cấu hình git khiến Android Studio không sử dụng được.
McP

2
Trường hợp tương tự đối với tôi. Cam kết các tệp đã thay đổi và đẩy đến repo đã sửa nó.
Simas

5

Tôi đã bật tính năng tiết kiệm năng lượng trong Android Studio 1.0, điều đó có ích nhưng điều này có nghĩa là tôi đã chọn không sử dụng quá nhiều tính năng mà Android Studio phải cung cấp. Vì vậy, tôi đã tìm kiếm một giải pháp tốt hơn, tôi tình cờ luôn có một hộp thoại bật lên và yêu cầu tôi tăng kích thước máy ảo của mình. Rõ ràng sau khi tôi tăng điều này, tôi có thể tắt tiết kiệm năng lượng và Android Studio của tôi hoạt động hoàn hảo.

Đây là cách thực hiện: Trên Mac OS, hãy truy cập /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions(Để mở nội dung, nhấp chuột phải vào ứng dụng Android Studio> Xem nội dung) Bạn sẽ tìm thấy các biến sau

-Xms128m
-Xmx4096m
-XX:MaxPermSize=1024m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCompressedOops

Trên Windows, hãy chuyển đến Biến môi trường và tìm một Biến hệ thống được gọi là _JAVA_OPTIONS

Tăng các số liệu này tương ứng.

  • Xmx chỉ định nhóm phân bổ bộ nhớ tối đa cho Máy ảo Java (JVM).
  • Xms chỉ định nhóm cấp phát bộ nhớ ban đầu.

tức là JVM của bạn sẽ được bắt đầu với dung lượng bộ nhớ Xms và sẽ có thể sử dụng tối đa dung lượng bộ nhớ Xmx.


4

Tôi đã gặp vấn đề chính xác trên Linux. Giải quyết bằng cách tăng kích thước bộ nhớ.

Bắt đầu bằng cách xem các top -p <android studio pid> -Hluồng cho biết luồng nào đang sử dụng hầu hết CPU, đối với tôi có ba luồng: 94232,94233,94234. Sau đó, tôi thực hiện một jstack <pid>để lấy stack dump của android studio và tìm kiếm 0x17018 (= 94232), hóa ra là như vậy "Gang worker#0 (Parallel CMD Threads)". Cả ba người trong số họ. rõ ràng JVM quá bận rộn với việc GC mọi lúc.

Cũng đã mở jconsole chống lại quy trình studio android của tôi và nó hiển thị thời gian GC " 20 minutes" !!! (ở cuối tab bộ nhớ)

Khắc phục là thay đổi studio.vmoptions (hoặc studio64.vmoptions trong trường hợp của tôi), để tăng -Xmxgiá trị từ 750m mặc định lên 1500m. Đối với tôi như vậy là đủ. nếu bạn có quá nhiều bộ nhớ, hãy đặt thành 2g hoặc 4g hoặc 16g ..


Cảm ơn vì những gợi ý về sự tồn tại của jstack. Là người lần đầu tiên sử dụng tính năng này, tôi thực sự không biết cách sử dụng nó đúng cách, nhưng tôi có thể thấy có một số luồng VCS ở trạng thái CHẶN. Tôi không chắc liệu đây có phải là nguyên nhân gốc rễ hay không, nhưng nó có vẻ phù hợp với một số mô tả khác được tìm thấy ở đây.
Stephan Henningsen

4

Thật thú vị, đối với tôi, điều này dường như là một cái gì đó để làm với tích hợp kiểm soát phiên bản.

Tôi đã khắc phục điều này bằng cách tải lại dự án studio android của mình và khi nó hỏi về việc nối các liên kết CVS của tôi (tôi không nhớ lại từ ngữ chính xác), tôi chỉ nói "Bỏ qua". Sau đó nó chạy mượt mà không cần kéo CPU


3

Tôi đã thử quy trình sau và Android StudiotrênSurface Pro 3 tăng tốc bởi một số tiền điên rồ:

  1. Giảm amountmemorycác Android Virtual Devicesbạn có.
  2. Invalidate Caches/Restart
  3. Đi đến Power Save Chế độ
  4. Đóng tất cả unnecessary files that are opened .
  5. Giảm của bạn VM Heap Sizeđến xung quanh 256.

2

Trên Windows, tôi đã giảm mức ưu tiên của quy trình studio64.exe và đặt mối quan hệ của quy trình thành một nửa số lõi. Mở Task Manager, nhấp vào tab Processes, nhấp chuột phải vào process studio64.exe và bạn sẽ thấy nó trong menu.


Thật thú vị khi một số người coi điều này là hữu ích.
Stephan Henningsen

1

Tôi đã để ngỏ câu hỏi này trong một thời gian vì các đồng nghiệp và áp phích ở đây đã tìm thấy giá trị trong các giải pháp khác nhau theo thời gian. Đối với bản thân tôi, chỉ cần cập nhật Android Studio đã giải quyết được vấn đề (sau một số tháng mà không có giải pháp nào ở đây phù hợp với tôi).


4
Tôi đang sử dụng bản phát hành ổn định mới nhất của Android Studio, 3.2.1 và tôi vẫn thấy vấn đề này.
hansonchris

Trình giả lập dường như sử dụng rất nhiều năng lượng.
DragonFire

0

Trên Android Studio 2.3, điều này xảy ra khi cửa sổ "Màn hình Android" mở (cửa sổ hiển thị thông báo Logcat từ thiết bị và trình giả lập), sau đó bạn nhấn Ctrl+F( Cmd+Ftrên Mac) để hiển thị thanh tìm kiếm 'Tìm' bên trong cửa sổ này .

Điều này cũng có thể xảy ra khi bạn kết nối điện thoại Samsung với máy tính của mình qua USB đã bật Chế độ nhà phát triển, vì điện thoại Samsung thường gửi một lượng lớn văn bản gỡ lỗi đến Logcat mỗi giây, ngay cả khi cửa sổ Logcat đóng.

Vì vậy, các giải pháp để ngăn chặn việc sử dụng 100% CPU là:

Tắt thanh tìm kiếm Find hoặc ẩn hoàn toàn cửa sổ.

hoặc là

Ngắt kết nối điện thoại Samsung đang gửi nhiều thông báo gỡ lỗi.

hoặc là

Nâng cấp lên Android Studio 3, lỗi này không xảy ra.


0

Trong trường hợp của tôi, tôi có white-listedthư mục của Android-Studio "Eset Smart Security"và sự cố đã được giải quyết!

hi vọng điêu nay co ich!

Biên tập:

Vô hiệu hóa HIPStrong Eset settingslà cũng hữu ích trong hoàn cảnh của tôi!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.