2008-09-12 73 views
5

Tôi có Biểu mẫu Windows mất một chút thời gian để tải ban đầu. Tuy nhiên, mỗi yêu cầu tiếp theo để tải Biểu mẫu không mất nhiều thời gian. Có cách nào để tối ưu hóa thời gian tải của Biểu mẫu không?Tối ưu hóa Thời gian tải Biểu mẫu Windows

Trả lời

10

Bạn có thể sử dụng ngen.

Tôi cũng sử dụng mẹo này để giảm Memory footprint on startup.

Trình tạo hình ảnh gốc (Ngen.exe) là công cụ cải thiện hiệu suất của các ứng dụng được quản lý. Ngen.exe tạo hình ảnh gốc, là các tệp chứa mã máy của bộ xử lý được biên dịch cụ thể và cài đặt chúng vào bộ nhớ cache hình ảnh gốc trên máy tính cục bộ. Thời gian chạy có thể sử dụng hình ảnh gốc từ bộ nhớ cache thay vì sử dụng trình biên dịch vừa phải (JIT) để biên dịch bản gốc.

+1

Lưu ý rằng bạn bị mất các lợi ích của JITting khi bạn sử dụng NGEN. Một điều bạn có thể làm là đặt Biểu mẫu trong một EXE NGENED và phần còn lại của logic ứng dụng trong một DLL không phải là NGENed. –

+0

Tốt tip marxidad. nếu bạn có thể đăng nó như một câu trả lời, một câu trả lời từ tôi :) –

+0

Một câu trả lời tuyệt vời từ Will Dean bên dưới. –

5

Bạn cần tìm hiểu xem thời gian sẽ diễn ra trước khi bạn có thể tối ưu hóa nó. Đừng chỉ ngấm nó mà không tìm ra điều đó trước, như thể vấn đề đang tải một tài nguyên bitmap nền 150MB thì bạn sẽ không làm bất cứ điều gì hữu ích chút nào với ngen.

Bạn nên bỏ qua tất cả các lời khuyên hoặc thông tin cụ thể về tối ưu hóa phát sinh mà không có bất kỳ phép đo nào được thực hiện.

+0

Điều này rất đúng. Bạn có phương pháp nào để tìm ra tắc nghẽn tiềm năng không? –

+0

sử dụng profiler như [Red Gate] (http://www.red-gate.com/products/dotnet-development/dotnet-developer-bundle/) là rất tốt trong việc tìm ra tắc nghẽn :) – Darkzaelus