Bir C# uygulaması oluştururken, 'ThePreStub' adında bir sistem (?) Yönteminde önemli miktarda CPU kullanımı görüyorum. Bu nedir?C# programında ThePreStub nedir?
cevap
bakınız: çapraz montaj referanslar:
NGen derlenmiş kod Süreç tam zamanında derlenmiş bir nedenle kodu, temel daha düşüktür CLR Inside out - The Performance Benefits of NGen.. JIT derlenmiş kodunda, çapraz başvuru referansları, doğrudan aramalar veya atlamalar olarak uygulanabilir, çünkü bu referansların adreslerinin tam adresleri çalışma zamanında bilinir. Statik olarak derlenmiş kod için, , çapraz montaj referansları, pre-stub yöntemini kullanarak, çalışma zamanında doğru adresle doldurulmuş alan bir atlama yuvasından geçmelidir. Ön-yöntem yönteminde, diğer yöntemlerin yanı sıra, yerel görüntülerin, bu yöntem tarafından başvurulan derlemeleri, yöntem uygulanmadan önce belleğe yüklenmesini sağlar. Ön izleyicinin, yöntemin ilk çağrılmasının gerçekleştirilmesi için yalnızca 'a ihtiyacı vardır; Sonraki aramalar için kısa devre dışıdır. Ancak, her zaman yöntemi çağrıldığında, çapraz montaj referanslarının dolaylılık seviyesinden geçmesi gerekir. Bu, esas olarak, JIT derlenmiş kodla karşılaştırıldığında NGen tarafından derlenen kod için verimde 5-10 düşüşünü açıklayan şeydir.
- 1. Bu basit c programında sorun nedir?
- 2. C programında% c nasıl yazdırılır?
- 3. Linux programında C++
- 4. C Programında #define Kullanımı
- 5. C programında Linux komutunu çalıştırın
- 6. C programında wait() dönüş değeri()
- 7. C/C++ Programında Önbellek Vuruşu/Bayan Program
- 8. C programında% s belirtiminden önce c
- 9. Ekranda C# WinForms programında titreme temizle
- 10. Bir C++ programında bir XML dosyası okuma
- 11. C# programında bir .lib dosyasını kullanma
- 12. C++ programında hata satırı numarası nasıl alınır
- 13. C++ Programında çalışma zamanında yığın boyutunun belirlenmesi
- 14. C programında JVM'yi NO kütüphanesi ile gömmek için önerilen yol?
- 15. #include <stdio.h> gerçekten bir c programında ne yapıyor
- 16. python 2 programında iletişim
- 17. JNI programında jstring dönüşü
- 18. Java programında harici program çalıştır
- 19. GCC programında istisnalar yakalanmaz
- 20. Xcode programında kilitlenme nerede
- 21. TCP Programında Sorun (Java)
- 22. mapreduce programında çalıştırılıyor
- 23. C programında yavaşlamanın ne olduğunu öğrenmek için araçlar?
- 24. Belirtilen iki sayı arasındaki toplam sayı veya ürün (C programında)
- 25. C++ programında Apple Magic Trackpad giriş verilerine erişme
- 26. Linux Graphics C programında aşağıdaki hatayı nasıl çözebilirim?
- 27. Yığın, bu C++ programında adım adım nasıl değişir?
- 28. C++ çoklu iş parçacıklı programında seri kod yürütme
- 29. C++ programında birden çok .cpp dosyası kullanılıyor mu?
- 30. C programında LLVM derlemesi veya intrinsics nasıl eklenir?
Lütfen ne denediğinizi ve ne bulduğunuzu ve bu bilgilerin neden yeterli olmadığını gösteriniz. "ThePreStub" için ilk birkaç web arama sonucu CLR'nin nasıl çalıştığını ** açıklıyor. – CodeCaster
@CodeCaster - Yorumunuzu yaptıktan sonra bir deneme yaptım ve "ThePreStub" için * Google * 'ın çok fazla iyi bilgi aldığını öğrendim. Ne yazık ki, aslında Windows ile Windows VM'mi varsayılan sağlayıcı olarak aramayı denedim ve neredeyse hiçbir şey bulunamadı. Ders öğrenildi. – Eric