Tôi đang chạy các chương trình từ Eclipse (trên Windows) để ăn nhiều thời gian của CPU. Để tránh làm hỏng toàn bộ máy của tôi, tôi đặt mức độ ưu tiên thành Thấp bằng Trình quản lý tác vụ. Tuy nhiên, đây là một quá trình thủ công rườm rà. Có cách nào Eclipse có thể đặt ưu tiên này tự động không? EDIT: Tôi nhận ra rằng mỗi launcher cụ thể (Java, Python, vv) có phương pháp cấu hình riêng của nó, vì vậy tôi sẽ hạn chế câu hỏi này vào miền Java, đó là những gì tôi cần nhất.Làm cách nào để khởi chạy từ Eclipse với mức độ ưu tiên Thấp trong Windows?
Trả lời
Một lựa chọn tốt hơn là cấu hình dung lượng bộ nhớ mà Eclipse sẽ sử dụng: http://www.eclipsezone.com/eclipse/forums/t61618.html
Và thực hiện tìm kiếm google về -Xmx và -Xms tham số cho JVM (mà bạn có thể cấu hình cho chạy bên trong Eclipse).
Trân trọng
Tôi giả định rằng bạn khởi chạy các chương trình này bằng Công cụ bên ngoài. Nếu vậy, bạn có thể sửa đổi lệnh khởi chạy để sử dụng hack start /low
được mô tả trước đó. Tuy nhiên, nếu các ứng dụng này có loại khởi chạy đặc biệt (như Ứng dụng Java hoặc tương tự), thì bạn gặp sự cố. Cách duy nhất bạn thực sự có thể thay đổi điều này là để mở mã nguồn cho Eclipse, tìm loại khởi chạy đó và nơi nó gửi nhiệm vụ và sau đó sửa đổi nó để sử dụng start /low
. Xin lỗi, nhưng tôi không nghĩ rằng có một giải pháp đơn giản cho việc này.
Tôi đã dành một chút thời gian để điều tra việc này. Không có phương thức bên trong Java để giảm mức độ ưu tiên (theo như tôi thấy), vì vậy bạn cần sử dụng phương pháp "bắt đầu/tối thiểu". Tôi không cố gắng làm việc đó.
Thay vào đó, tôi có bộ xử lý đa nhân. Điều này cung cấp chỗ cho các công cụ khác, ngay cả khi một chương trình Java chạy amok trên một hạt nhân.
Rất khuyến khích.
Tôi muốn điều này là tốt, kỳ lạ là nó không phải là có thể, thực sự. Tôi biết bạn có thể thiết lập ưu tiên thread, nhưng tôi nghĩ rằng trong cửa sổ đất, chủ đề được tất cả các lịch trình "bên trong" ưu tiên quá trình như vậy để nói chuyện.
Nếu bạn cần nó chỉ trong sự phát triển, bạn có thể thiết lập các ưu tiên của tất cả các quá trình khác để cao ...
Nếu thiết lập một là cồng kềnh ... không nên thiết lập tất cả những người khác thậm chí còn tồi tệ hơn? – Scorpio
tôi đã chạy vào cùng một câu hỏi trong Linux và đã thấy điều này: http://tech.stolsvik.com/2010/01/linux-java-thread-priorities-workaround.html
Bit thú vị là về cách chuyển đổi ưu tiên luồng Java sang ưu tiên của hệ điều hành. Điều này đã giải quyết được vấn đề cho tôi, nó cũng có thể giúp bạn.
Tôi gặp vấn đề tương tự trên Windows --- khởi chạy các quy trình con sử dụng tất cả CPU (công việc song song), nhưng tôi muốn có sự đáp ứng tốt trong môi trường phát triển Windows của tôi.
Giải pháp: sau khi tung ra một số công việc:
cmd DOS >>wmic process where name="javaw.exe" CALL setpriority "below normal"
Không, điều này sẽ không ảnh hưởng đến quá trình eclipse.exe.
Java Giải pháp: Chèn mã này vào chương trình CPU-mãnh liệt của mình để hạ thấp ưu tiên của Windows riêng của họ:
public static void lowerMyProcessPriority() throws IOException {
String pid = ManagementFactory.getRuntimeMXBean().getName();
int p = pid.indexOf("@");
if (p > 0) pid = pid.substring(0,p);
String cmd = "wmic process where processid=<pid> CALL setpriority".replace("<pid>", pid);
List<String> ls = new ArrayList<>(Arrays.asList(cmd.split(" ")));
ls.add("\"below normal\"");
ProcessBuilder pb = new ProcessBuilder(ls);
pb.start();
}
Vâng, thử nghiệm. Hoạt động trên Win7.
cảm ơn. dos cmd là rất hữu ích cho các công cụ hàng loạt :) – wuppi
Sử dụng công cụ OS hoặc java.exe giả mạo để nắm bắt lệnh javaw.exe dài thực sự mà trình chạy nhật thực sinh ra.
Bỏ qua eclipse.exe và khởi chạy trực tiếp javaw.exe.
Khi bạn đã khởi chạy javaw.exe trực tiếp và chính xác.
START/BELOWNORMAL \ đường dẫn \ javaw.exe nhiều-of-thông số-to-load-workspace
- 1. Làm cách nào để khởi chạy quy trình có mức độ ưu tiên thấp? C#
- 2. Chạy tác vụ ở chế độ nền với mức ưu tiên CPU thấp hơn
- 3. Thư PHP() - Cách đặt mức độ ưu tiên?
- 4. Làm cách nào để thay đổi mức độ ưu tiên của một quy trình?
- 5. Cách đặt Mức độ ưu tiên của IntentService trong Android
- 6. Làm cách nào để xác định mức độ nghiêm trọng (mức độ nghiêm trọng/cao/thấp, v.v.) của các lỗi?
- 7. Cài đặt mức độ ưu tiên (ưu tiên) không có hiệu lực trên Linux
- 8. I/O ưu tiên thấp trong OS X
- 9. Thay đổi mức độ ưu tiên trong Log4j
- 10. Thay đổi mức độ ưu tiên của chuỗi tăng trong Windows
- 11. Trình thông dịch Lua mức độ thấp
- 12. Làm cách nào để thay đổi mức ưu tiên của thư trong MSMQ?
- 13. Linux & C: Cách đặt mức độ ưu tiên đọc tệp trong chương trình đa tiến trình?
- 14. Cách sửa đổi mức độ ưu tiên của hàng đợi GCD tùy chỉnh?
- 15. Làm cách nào để hiển thị chế độ xem trên lần khởi chạy đầu tiên?
- 16. Nhận thư theo ưu tiên từ MSMQ
- 17. Tạo âm thanh ở mức độ thấp trong C#?
- 18. Cập nhật mức độ ưu tiên thấp trên MySQL bằng JDBC - cách kiểm tra xem chúng hoạt động như thế nào
- 19. Cách an toàn để thay đổi mức độ ưu tiên của NSOperation
- 20. Làm thế nào để tăng ưu tiên luồng trong pthreads?
- 21. Mức độ ưu tiên trong cách giải quyết lựa chọn Go
- 22. Sử dụng Eclipse với Màn hình độ phân giải thấp
- 23. Đặt mức ưu tiên chỉ số bộ điều hợp mạng trong Windows 7
- 24. Làm cách nào để tạo lại UIImage với mức nén thấp hơn trong iOS?
- 25. cách tạo quy trình mức toàn vẹn trung bình từ quy trình mức toàn vẹn thấp?
- 26. Có thông tin tốt về khởi động PC ở mức độ thấp ở đâu?
- 27. Tôi có thể đặt Powershell bắt đầu-công việc với ưu tiên thấp?
- 28. Có cách nào để đặt một Web Worker thành ưu tiên thấp không?
- 29. Ưu tiên với activemq
- 30. Ưu tiên nhiệm vụ trong cần tây với redis
tôi không có cần phải thay đổi việc sử dụng bộ nhớ trên thực tế, đó là dễ dàng như bạn nói. tôi đang chạy các chương trình sử dụng nhiều CPU. – adum