Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Hata ayıklayıcıyla tümleşik CPU Kullanımı tanılama aracıyla hata ayıklarken performans sorunlarını bulun. Ayrıca, hata ayıklayıcı eklemeden veya çalışan bir uygulamayı hedefleyerek CPU kullanımını analiz edebilirsiniz. Daha fazla bilgi için bkz. Yayında profil oluşturma araçlarını çalıştırma veya derlemelerde hata ayıklama ve CPU profil oluşturmakullanarak performansı analiz etme.
Hata ayıklayıcı duraklatıldığında, Tanılama Araçları penceresindeki CPU Kullanımı aracı, uygulamanızda yürütülen işlevler hakkında bilgi toplar. Araç, çalışma gerçekleştiren işlevleri listeler ve örnekleme oturumunun belirli segmentlerine odaklanmak için kullanabileceğiniz bir zaman çizelgesi grafiği sağlar.
Önemli
Hata ayıklayıcıyla tümleşik Tanılama Araçları, ASP.NET, ASP.NET Core gibi Visual Studio'da .NET geliştirme ve yerel/C++ geliştirme için desteklenir. İlgili Visual Studio iş yükü gereklidir. Hata ayıklayıcısıyla profil oluşturma araçlarını çalıştırmak için Windows 8 ve üzeri gereklidir (Tanılama Araçlarıpenceresi).
Bu öğreticide şunları yapacaksınız:
- CPU kullanım verilerini toplama
- CPU kullanım verilerini analiz etme
1. Adım: CPU kullanım verilerini toplama
Visual Studio'da hata ayıklamak istediğiniz projeyi açın ve uygulamanızda CPU kullanımını incelemek istediğiniz noktada bir kesme noktası ayarlayın.
analiz etmek istediğiniz işlevin veya kod bölgesinin sonunda ikinci bir kesme noktası ayarlayın.
İki kesme noktası ayarlayarak, veri toplamayı analiz etmek istediğiniz kod bölümleriyle sınırlayabilirsiniz.
Tanılama Araçları penceresi, siz kapatmadığınız sürece otomatik olarak görüntülenir. Pencereyi yeniden açmak için Hata Ayıklama>Windows>Tanılama Araçlarını Gösteröğesine tıklayın.
Araç çubuğundaki Araçları Seç ayarıyla CPU Kullanımı, Bellek Kullanımıveya her ikisini birden görmeyi seçebilirsiniz. Visual Studio Enterprise çalıştırıyorsanız, IntelliTrace'i Araçları>Seçenekleri>IntelliTracebölümünde de etkinleştirebilir veya devre dışı bırakabilirsiniz.
Esas olarak CPU kullanımına bakacağız, bu nedenle CPU Kullanımı etkinleştirildiğinden emin olun (varsayılan olarak etkindir).
Hata Ayıklama>Hata Ayıklamayı Başlat üzerine tıklayın (veya araç çubuğunda Başlat veya F5).
Uygulamanın yüklenmesi tamamlandığında Tanılama Araçları'nın Özet görünümü görüntülenir. Pencereyi açmanız gerekiyorsa Hata Ayıkla>Windows>Tanılama Araçlarını Gösterüzerine tıklayın.
Tanılama Araçları Özet Sekmesini gösteren ekran görüntüsü

Olaylar hakkında daha fazla bilgi için Tanılama Araçları penceresinin Olaylar sekmesinde arama ve filtrelemebölümüne bakın.
İlk kesme noktasının vurulmasına neden olacak senaryoyu çalıştırın.
Hata ayıklayıcı duraklatılırken CPU Kullanımı verilerinin toplanmasını etkinleştirin ve ardından CPU Kullanımı sekmesini açın.
KAYDET CPU Profili'ni seçtiğinizde Visual Studio işlevlerinizi ve bunların yürütülmesinin ne kadar zaman alacağını kaydetmeye başlar. Toplanan bu verileri yalnızca uygulamanız kesme noktasında durdurulduğunda görüntüleyebilirsiniz.
Uygulamayı ikinci kesme noktanıza çalıştırmak için F5 tuşuna basın.
Şimdi, uygulamanız için özellikle iki kesme noktası arasında çalışan kod bölgesine yönelik performans verileriniz var.
Profil oluşturucu iş parçacığı verilerini hazırlamaya başlar. Bitmesini bekleyin.
CPU Kullanımı aracı, raporu CPU Kullanımı sekmesinde görüntüler.
Tanılama Araçları CPU Kullanımı Sekmesini gösteren ekran görüntüsü
. DiagToolsCPUUsageTabDiagToolsCPUUsageTabAnaliz edilecek daha belirli bir kod bölgesi seçmek istiyorsanız CPU zaman çizelgesinde bir bölge seçin (profil oluşturma verilerini gösteren bir bölge olmalıdır).
Bu noktada verileri analiz etmeye başlayabilirsiniz. Veri toplama veya görüntüleme konusunda sorun yaşıyorsanız, profil oluşturma hatalarını giderme ve sorunları düzeltme bölümüne bakın vebölümünü inceleyin.
Bahşiş
Performans sorunlarını belirlemeye çalışırken birden çok ölçüm yapın. Performans doğal olarak çalıştır-çalıştır arasında değişir ve kod yolları genellikle DLL'leri yükleme, JIT derleme yöntemleri ve önbellekleri başlatma gibi tek seferlik başlatma çalışmalarından dolayı ilk kez çalıştırıldığında daha yavaş yürütülür. Birden çok ölçüm alarak, gösterilen ölçümün aralığı ve ortanca değeri hakkında daha iyi bir fikir edinmiş olursunuz ve bu da ilk kez bir kod alanının kararlı durum performansıyla karşılaştırmanızı sağlar.
2. Adım: CPU kullanım verilerini analiz etme
CPU Kullanımı altındaki işlevlerin listesini inceleyerek, en çok iş yapan işlevleri belirleyerek ve ardından her birine daha yakından bakarak verilerinizi analize başlamanızı öneririz.
İşlev listesinde, en çok iş yapan işlevleri inceleyin.
Bahşiş
İşlevler, en çok iş yapanlardan başlayarak sırasıyla listelenir (çağrı sırasına göre değildir). Bu, en uzun süre çalışan işlevleri hızla belirlemenize yardımcı olur.
İşlev listesinde, çok fazla iş yapan uygulama işlevlerinizden birine çift tıklayın.
bir işleve çift tıkladığınızda, İşlevleri görünümü sol bölmede açılır. Açılan menüden Arayan/Aranan görünümünü seçin.
Bu görünümde, seçili işlev başlık kısmında ve Geçerli İşlev kutusunda (bu örnekte DoWork) gösterilir. Geçerli işlevi çağıran işlev sol tarafta Çağrılan İşlevleraltında, geçerli işlev tarafından çağrılan tüm işlevler de sağ taraftaki Çağrılan İşlevler kutusunda gösterilir. (Geçerli işlevi değiştirmek için iki kutuyu da seçebilirsiniz.)
Bu görünümde toplam süre (ms) ve işlevin tamamlanması için geçen genel uygulama çalışma süresinin yüzdesi gösterilir. İşlev Gövdesi, işlev gövdesinde çağrılan ve çağrılan işlevlerde harcanan süre dışında harcanan toplam süreyi (ve zaman yüzdesini) de gösterir.
Bahşiş
İşlev Gövdesi yüksek değerler, işlevin kendi içinde bir performans sorunu olduğunu gösterebilir.
Daha üst düzey bir görünüm elde etmek için işlevlerin hangi sırayla çağrıldığını gösteren bölmenin üst kısmındaki açılan listeden Çağrı Ağacı seçeneğini seçin.
Şekildeki her numaralandırılmış alan, yordamdaki bir adımla ilgilidir.
Sütun değerleri hakkında daha fazla bilgi aşağıdadır:
Toplam CPU işlevin ne kadar çalışma yaptığını ve işlevin çağırdığı işlevleri gösterir. Toplam CPU değerlerinin yüksek olması, genel olarak en pahalı işlevlere işaret eder.
Self CPU, çağrılan işlevler tarafından yapılan çalışmalar hariç, işlevin gövdesindeki kod tarafından ne kadar iş yapıldığını gösterir. Yüksek Self CPU değerleri işlevin kendi içinde bir performans sorununa işaret edebilir.
Modülleri İşlevi içeren modülün adı veya [Dış Kod] düğümündeki işlevleri içeren modüllerin sayısı.
Çağrı ağacı görünümünde CPU'nun en yüksek yüzdesini kullanan işlev çağrılarını görmek için Sık Erişimli Yolu Genişletöğesine tıklayın. Sık erişimli yol, araştırmanızı en çok etkileyebilecek alana odaklamanıza yardımcı olabilir.
Not
Çağrı ağacında "bozuk" kod veya "izlenemez yığın" olarak işaretlenmiş bir kod görürseniz bu, Windows için Olay İzleme (ETW) olaylarının büyük olasılıkla bırakıldığını gösterir. Sorunu çözmek için aynı izlemeyi ikinci kez toplamayı deneyin.
Verilerin farklı bir görünümünü görmek için bölmenin üst kısmındaki açılan listeden Alev Grafı seçin.
Alev grafiği, çağrı ağacının farklı bir görselleştirmesini sağlayarak verileri analiz etmenizi sağlar. Daha fazla bilgi için bkz. Alev grafı ile önemli yolları tanımlama.
İşleve veya modüle göre toplanan verilerin görünümlerini görmek için bölmenin üst kısmındaki açılan listeden İşlevler veya Modüller seçeneğini belirleyin.
Bu görünümler, yüksek çağrı sayıları ve/veya performans sorunlarının bir bileşiminden kaynaklanan performans sorunları olabilecek işlevleri veya modülleri tanımlamaya yardımcı olur.
Dış kodu görüntüleme
Dış kod, yazdığınız kod tarafından yürütülen sistem ve çerçeve bileşenlerindeki işlevlerdir. Dış kod, uygulamayı başlatıp durduran, kullanıcı arabirimini çizen, iş parçacığını denetleten ve uygulamaya diğer düşük düzeyli hizmetler sağlayan işlevleri içerir. Çoğu durumda, harici kodla ilgilenmeyeceksiniz ve bu nedenle CPU Kullanımı aracı bir kullanıcı yöntemindeki harici işlevleri bir [Dış Çağrı] düğümünde olarak toplar.
Dış kodun arama yollarını görüntülemek istiyorsanız, Ayarlar listesinden Yalnızca Kodumu Göster seçimini kaldırın ve ardından Uygulaseçeneğini belirleyin.
ayarlar'ı gösteren ekran görüntüsü 
İşlev Adı sütununun genişliğinin en büyük bilgisayar monitörleri dışındaki tüm ekran genişliğini aşabilmesi için birçok dış kod çağrı zincirinin iç içe geçmiş olduğunu unutmayın. Bu durumda işlev adları [...] olarak gösterilir.
Aradığınız düğümü bulmak için arama kutusunu kullanın, ardından yatay kaydırma çubuğunu kullanarak verileri görünüme getirin.
Bahşiş
Windows işlevlerini çağıran dış kodun profilini oluşturursanız, en güncelpdb dosyalarına sahip olduğunuzdan emin olmanız gerekir. Bu dosyalar olmadan rapor görünümleriniz, şifreli ve anlaşılması zor Windows işlev adlarını listeler. İhtiyacınız olan dosyaların sizde olduğundan emin olmak için daha fazla bilgiye şu bağlantıda ulaşabilirsiniz: Hata ayıklayıcıda simge (.pdb) ve kaynak dosyalarını belirtme.
Sonraki adımlar
Bu öğreticide CPU kullanım verilerini toplamayı ve çözümlemeyi öğrendiniz. profilleyicininturunu tamamladıysanız, araçların daha etkili bir şekilde nasıl kullanılacağını gösteren bir eğitimi incelemek isteyebilirsiniz.
Örnek olay incelemesi: Kod iyileştirmeye yönelik başlangıç kılavuzu
Bu öğreticide, hata ayıklama sırasında CPU kullanım verilerini toplamayı ve çözümlemeyi öğrendiniz. Performans Profili Oluşturucu kullanarak sürüm derlemelerinin profilini oluşturma hakkında daha fazla bilgi edinmek isteyebilirsiniz.
Performans Profili CPU kullanımını analiz etme