2012-08-24 53 views
10

Ứng dụng Java chạy nhanh hơn trên Windows 7 trong chế độ tương thích Windows XP theo một số khách hàng của tôi, nhưng tại sao?Ứng dụng Java được bao bọc chạy nhanh hơn trên Windows 7 trong chế độ Tương thích Windows XP

Tôi dường như không gặp vấn đề gì, nhưng họ thấy ứng dụng dường như tiêu thụ 100% CPU trong khi không làm gì cả, chỉ cần đặt thuộc tính của tệp exe hoặc tệp hàng loạt gọi java sang chế độ tương thích Windows XP sửa chữa nó, làm thế nào có thể được?

+0

Tôi không nói rằng tôi biết lý do tại sao, nhưng bạn có kiểm tra xem đó là một JVM 32 bit hoặc JVM 64 bit không? –

+1

Hãy cảm ơn khách hàng của bạn đã tìm thấy giải pháp phù hợp với họ. Ứng dụng Java của bạn có 32 bit hay 64 bit không? Máy Windows 7 của khách hàng của bạn có 32 bit hay 64 bit không? –

+0

Vâng, tôi nghĩ rằng Windows7 là 64bit, ứng dụng có thể là 32bit hoặc 64bit, thẳng thắn vì tôi không thể sao chép vấn đề bản thân mình đang cố gắng theo dõi điều này, nhưng đã tự hỏi liệu có ai có thể hiểu tại sao ứng dụng có thể chạy tốt hơn trong tính tương thích hay không mode –

Trả lời

-1

Đó là do việc chuyển đổi tác vụ trong nội bộ. Việc chuyển đổi các tác vụ trong Windows Xp ở chế độ tương thích được so sánh với Windows 7. Nó có thể gây ra do tường lửa cũng vậy. Kiểm tra trạng thái tường lửa của bạn trong Windows 7.

+2

Ý của bạn là gì? Chuyển đổi nhiệm vụ nào, nội bộ thành cái gì? "chuyển đổi ... được so sánh với cửa sổ 7". Còn gì nữa? Bạn có thể đưa ra một số nguồn không? – ymajoros

+0

Tôi nghĩ anh ấy cho rằng nhiệm vụ chuyển đổi bên trong trong chế độ XP có hiệu suất cao hơn so với phiên bản gốc 7. – Miere

4

Không có câu trả lời rõ ràng nhưng chỉ là một cách để chẩn đoán trên trang web những gì đang xảy ra chính xác.

Bạn phải khẳng định đó là quá trình tiêu thụ CPU và những gì nó đang làm chính xác, ví dụ bằng cách giám sát các cuộc gọi hệ thống thực hiện: các Sysinternals các công cụ như Process ExplorerProcess Monitor nên dẫn đến manh mối về những gì có thể sai. Ít nhất, bạn có thể so sánh hồ sơ thực thi so với không có chế độ tương thích XP.

Vì vấn đề có thể đến từ chính ứng dụng Java, bạn nên thử một hồ sơ JVM với các công cụ như Netbeans Profiler. Có lẽ mã dựa trên một số công cụ cụ thể của Windows XP như cấu trúc thư mục hoặc biến môi trường không còn tồn tại hoặc đã thay đổi trong Windows 7 (nhưng bạn đã lưu/áp dụng lại cài đặt của riêng mình) ... dẫn đến xử lý lỗi không đúng và vòng lặp vô hạn ví dụ retries.

Trình biên tập cửa sổ gốc cũng có thể là một tùy chọn nhưng quá khó để phân tích mà không có mã nguồn JVM và khi mã Java có liên quan do JIT.

0

Không có giải pháp trực tiếp, nhưng câu hỏi của bạn khá mở.

Nếu khách hàng của bạn có thể tái tạo điều này một cách nhất quán, bạn có thể xem họ có sẵn sàng gửi cho bạn remote assistance request, cho phép bạn lên máy tính để bàn hay không. Sau đó, ít nhất bạn có thể thấy vấn đề đang hoạt động, và thử gỡ lỗi nó trên máy của họ bằng cách sử dụng các công cụ được đề cập bởi những người khác.

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