2012-07-05 38 views
35

Trên máy đa lõi của tôi, Eclipse sử dụng sức mạnh CPU từ 100 đến 250%, ngay cả khi đang chạy không tải trên một cài đặt đồng bằng mới và vùng làm việc trống. Khi thực sự làm mọi thứ, nó trở nên chậm chạp và không phản hồi.Sử dụng CPU cao trong Eclipse khi nhàn rỗi

Tôi đã thử đặt cài đặt bộ nhớ như được đề xuất tại đây: Eclipse uses 100 % CPU randomly. Điều đó không giúp được gì. Tôi cũng đã thử các phiên bản Java khác nhau, cụ thể là OpenJDK và Oracle Java 7, và các phiên bản Eclipse Juno và Indigo. Tôi đang trên Ubuntu 12.04 LTS.

Là một vấn đề khác có thể không liên quan khi tôi đóng Eclipse, quá trình Java vẫn mở với hơn 200% mức sử dụng CPU và cần được tự sát.

+0

Phiên bản nhật thực và phiên bản java nào? –

+0

giống như một plugin không hợp lệ, plugin nào bạn đã cài đặt gần đây? – shem

+0

có thể jvisualvm có thể giúp bạn có được một số manh mối. – shem

Trả lời

10

Tôi đã gặp sự cố này với các plugin, nhưng chưa bao giờ với chính Eclipse.

Bạn có thể thử gỡ lỗi bằng cách truy cập Help > About Eclipse > Installation details và tắt từng plugin một.

+4

Cần lưu ý rằng bạn không 'vô hiệu hóa' các plugin thông qua các chi tiết cài đặt trong bản phát hành Eclipse 4.2.2 Juno, bạn chỉ có thể gỡ cài đặt chúng và khởi động lại Eclipse. Điều đó đang được nói, một khi tôi gỡ cài đặt tất cả các plugin Mylyn + trình kết nối Subclipse Mylyn, bản cài đặt Eclipse OS của Mac OS X của tôi đã đi từ việc sử dụng 100% + CPU (tất cả thời gian!) Xuống thực tế không có gì. Cám ơn vì sự gợi ý! –

+0

Gỡ cài đặt trình kết nối SVN-Mylin dường như đã giúp ích trong trường hợp của tôi – xamde

9

Tôi đã nhìn thấy hành vi này chỉ khi bộ thu gom rác phát điên vì bộ nhớ được cấp phát thực sự đạt đến giới hạn bộ nhớ tối đa được cấu hình của máy ảo. Nếu bạn có cài đặt Eclipse lớn, bước đầu tiên của bạn phải luôn là increase the memory settings in the eclipse.ini.

Vui lòng kích hoạt Cửa sổ -> Tùy chọn -> Chung -> Hiển thị trạng thái heap. Nó sẽ cho bạn biết có bao nhiêu bộ nhớ mà Eclipse hiện đang sử dụng (trong dòng trạng thái). Nếu điều đó tăng lên đến mức tối đa cho phép và không giảm nữa (tức là bộ thu gom rác không thể dọn sạch các đối tượng không sử dụng), thì đó chính là dấu hiệu cho những gì tôi đã mô tả ở trên.

Chỉnh sửa: Bạn cũng nên biết gói Eclipse bạn sử dụng, vì những gói này chứa các plugin khác nhau theo mặc định. Classic, Modeling, Java EE developers, ...?

+0

Cảm ơn bạn, mac của tôi đã hiển thị 80% CPU chỉ đang ngồi ở đó. Kiểm tra nó ra và nó tiếp tục đi từ khoảng 490mb -> 508mb và sau đó trở lại xuống .. Thực hiện thay đổi, và khởi động lại nhật thực, và bây giờ nhàn rỗi ở mức 3,5% cpu .. Cảm ơn. – Chrispix

19

Tôi đã gặp sự cố tương tự ngày hôm nay và hóa ra đó là chuỗi chỉ mục đang chiếm CPU. Gần đây tôi đã thêm khá nhiều tệp vào một dự án và đã quên nó. Tôi nhận ra rằng không có ai có vấn đề này, nhưng nó có thể hữu ích để đăng cách tôi điều tra nó.

Tôi đang chạy Ubuntu 12.10 với STS dựa trên nhật thực Juno.

  1. Bắt đầu nhật thực từ dòng lệnh và chuyển hướng đầu ra vào một tập tin vì vậy chúng tôi có thể nhận được một bãi chứa thread
  2. Cho phép nó để giải quyết cho một chút, sau đó nhận được một danh sách các sử dụng CPU cho mỗi thread: ps -mo 'pid lwp stime thời gian pcpu' -C java. Dưới đây là một mẫu của các đầu ra mà xác định cpu đề đói của tôi:

    PID LWP STIME TIME% CPU

    6974 - 07:42 00:15:51 133

    7067 07:42 00:09: 49 86.1

  3. Chuyển đổi id chủ đề (trong trường hợp của tôi 7067) thành hex 0x1b9b (ví dụ:trong dòng lệnh sử dụng: printf "0x% x \ n" 7067)

  4. Thực hiện kết xuất chuỗi của quá trình java bằng cách sử dụng lệnh kill -3: kill -3 6974. Đầu ra được lưu trong tệp bạn đã chuyển hướng chế độ xuất chuẩn khi bạn bắt đầu che khuất

  5. mở tập tin và tìm kiếm id hex của thread:

    "Liên kết Indexer hoãn Viết-10" PRIO = 10 tid = 0x00007f66b801a800 nid = 0x1b9b Runnable [0x00007f66a9e46000]

    java.lang.Thread.State: RUNNABLE

    tại com.ibm.etools.references.internal.bplustree.db.ExtentManager $ WriteBack.r

+17

Kiểm tra các quy trình, theo dõi các chủ đề giả mạo, đọc qua địa chỉ hex ... Âm thanh như một ngày điển hình của việc làm cho Eclipse hoạt động đúng cách. –

+1

Điều này là dành cho tôi. Tôi đã phạm sai lầm thiêng liêng khi trích xuất tăng lên một trong các thư mục dự án của tôi và Eclipse có một chứng phình động mạch. – Gary

+0

Một 'một cú nhấp chuột-chức năng' làm tất cả những thứ cho bạn trong nhật thực sẽ là tốt đẹp :-) Và đầu ra sẽ là: 'Gỡ bỏ plugin XYZ nó làm cho Eclipse chậm!' – Tarator

0

Được phải đối mặt với cùng một vấn đề, Qua sau VM Đối số trong nhật thực và nó làm việc tốt cho tôi.

-Xmx1300m -XX: PermSize = 256M -XX: MaxPermSize = 256M

0

Gỡ cài đặt plugin Mylyn cố định vấn đề này cho tôi và tăng hiệu suất rất quyết liệt mà tôi đăng nó như là câu trả lời cho một năm 6 câu hỏi cũ.

Đi tới Help->About Eclipse->Installation Details->Installed Software và gỡ cài đặt tất cả các plugin mà bạn biết bạn không sử dụng. Tôi đã gỡ bỏ cài đặt chỉ mylyn plugins và nó đã làm cho tôi tự hỏi.

Các vấn đề liên quan