Greets-Java giảm sử dụng CPU
Chúng tôi gots một vài nutters trong công việc người thích sử dụng
while(true) { //Code }
trong mã của họ. Như bạn có thể tưởng tượng điều này maxes ra CPU. Có ai biết cách để giảm sử dụng CPU để những người khác có thể sử dụng máy chủ là tốt.
Mã tự nó chỉ liên tục bỏ phiếu internet để cập nhật trên các trang web. Vì vậy, tôi sẽ tưởng tượng một phương pháp ngủ ít sẽ làm giảm đáng kể việc sử dụng CPU.
Ngoài ra tất cả các thao tác đang được thực hiện trong các đối tượng String (Java) bất cứ ai biết có bao nhiêu StringBuilders sẽ làm giảm đầu hơn?
Thanks cho bất kỳ con trỏ
'while (true)' chỉ đơn giản là một thành ngữ có nội dung "làm điều này mãi mãi". Tự nó không làm gì cả; mã bên trong nó là những gì tiêu thụ chu kỳ CPU. Nếu mã bên trong đang tạo ra các yêu cầu mạng, thì nó sẽ bỏ thời gian của nó khi làm như vậy, vì vậy những người dùng khác sẽ nhận được các yêu cầu của họ; một 'sleep()' sẽ không ảnh hưởng đáng kể đến thông lượng tổng thể của máy chủ (mặc dù nó sẽ là một điều tốt đẹp cho những máy chủ đang bị chương trình tấn công). Và cuối cùng, 'StringBuilder' có thể hoặc (nhiều khả năng) có thể không cải thiện hiệu suất. Nhưng đó là lý do tại sao hồ sơ tồn tại: họ có thể cho bạn biết những gì đang dành nhiều thời gian nhất trong chương trình. – kdgregory
Như mọi khi chạy một profiler để xác định nơi cpu đi. Sau đó, sử dụng dữ liệu đó để đánh bại nhà phát triển có trách nhiệm trên đầu. –
Hệ điều hành nào? –