Khi độ chín .net, khả năng JIT đã được cải thiện để trở nên cực kỳ lười biếng. Tức là, không tạo mã máy nếu nó không cần thiết. Nói chung, đây là một điều tốt.Buộc JIT linh hoạt
Tuy nhiên, nếu tôi đang cố gắng warmup an application Tôi có thể thích lập trường JIT tích cực hơn. Có cách nào để cấu hình một ứng dụng .net sao cho tất cả các phương thức của một lớp được biên dịch JIT, đơn giản là vì lớp được xây dựng?
Nếu có, mẫu đối tượng sáng tạo ưa thích của tôi có thể nhanh chóng vẽ đồ thị đối tượng của tôi, và tôi sẽ có sẵn mọi thứ cùng lúc với JIT. Thật là tốt.
Việc này có thể thực hiện được không?
Bạn có thể xem .NET Native. Afaik, ngay bây giờ nó chỉ dành cho các ứng dụng Windows Store nhưng chúng sẽ mở rộng sang các loại khác sau này. http://msdn.microsoft.com/en-us/library/dn584397(v=vs.110).aspx –
Bạn có thể sử dụng ngen hoặc nó có thể được thực hiện theo cách thủ công của tôi gọi 'RuntimeHelpers.PrepareMethod' cho mỗi phương pháp. –
Không phải là 'tạo ra mã máy [khi cần thiết] lúc runtime' một phần cơ bản của một trình biên dịch JIT? Luôn luôn có [Native Image Generator] (http://msdn.microsoft.com/en-us/library/6t9t5wcf (v = vs.110) .aspx), nhưng tất nhiên có [trade-off] (http: //blogs.msdn.com/b/clrcodegeneration/archive/2007/09/15/to-ngen-or-not-to-ngen.aspx) giữa hai. – PoweredByOrange