Tôi vừa cài đặt Java 1.6_07 để tôi có thể thử lược tả bằng VisualVM. Nó cho tôi biết rằng ứng dụng của tôi đang chi tiêu 60% thời gian của mình trong sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run
Khoan xuống trong VisualVM
Làm cách nào để tìm hiểu những gì nó đang làm trong thời gian đó? Bao nhiêu thời gian nó chờ đợi một cái gì đó để gọi nó, hoặc làm cái gì khác? Cái gì đang gọi nó và nó gọi là gì? Tôi dường như không thể tìm thấy bất kỳ cách nào để đi sâu vào các cấp độ sâu hơn như có trong Quantify hoặc Perl profiler.
Trên thực tế, tôi đã kết thúc bằng cách sử dụng đánh giá 10 ngày của jprofiler. Và kể từ khi tôi không thể thuyết phục ông chủ của tôi để chi tiêu $ 500, tôi sẽ được đốt cháy thông qua rất nhiều địa chỉ email giả mạo thời gian tới tôi cần phải làm bất kỳ hồ sơ. –
Trình thu thập dữ liệu của JRockit, cuối cùng tôi sử dụng nó, có giấy phép phát triển/không sử dụng không tốn chi phí cho phép tối đa 30 phút sử dụng cho mỗi yêu cầu JVM; có lẽ điều đó có thể phù hợp hơn. –
Nhiệm vụ của JRockit Kiểm soát giấy phép mới không có giới hạn thời gian như vậy. Nó miễn phí để sử dụng cho phát triển và đánh giá. – Tnilsson