VSInstr

VSInstr aracı ikili dosyaları izlemek için kullanılır. Aşağıdaki söz dizimi kullanılarak çağrılır:

VSInstr [/U] filename [/options]

Aşağıdaki tabloda VSInstr araç seçenekleri açıklanmaktadır:

Seçenekler Açıklama
Yardım mı yoksa ? Yardımı görüntüler.
U Yeniden yönlendirilen konsol çıkışını Unicode olarak yazar. İlk seçenek belirtilmelidir.
@filename Satır başına bir komut seçeneği içeren bir yanıt dosyasının adını belirtir. Tırnak işareti kullanmayın.
OutputPath :path İzlemeli görüntü için bir hedef dizin belirtir. Çıkış yolu belirtilmezse, özgün ikili dosya aynı dizindeki dosya adına "Orig" eklenerek yeniden adlandırılır ve ikili dosyanın bir kopyası izlenmiş olur.
Dışlamak: funcspec Yoklamalar tarafından izlemenin dışında tutulacak işlev belirtimini belirtir. Bir işlevde yoklama ekleme profilinin eklenmesi öngörülemeyen veya istenmeyen sonuçlara neden olduğunda yararlıdır.

Aynı ikili dosyadaki işlevlere başvuran Dışla ve Ekle seçeneklerini kullanmayın.

Ayrı Dışlama seçenekleriyle birden çok işlev belirtimi belirtebilirsiniz.

funcspec şu şekilde tanımlanır:

[ad alanı<ayırıcı1>] [sınıf<ayırıcı2>]işlevi

<ayırıcı1> , :: yerel kod ve . yönetilen kod içindir.

<ayırıcı2> her zaman ::

Hariç tutma , kod kapsamıyla desteklenir.

Joker karakter * desteklenir. Örneğin, bir ad alanında tüm işlevleri dışlamak için şunu kullanın:

MyNamespace::*

Belirtilen ikili dosyadaki işlevlerin tam adlarını listelemek için VSInstr /DumpFuncs kullanabilirsiniz.
Kapsamak: funcspec Bir ikili dosyada yoklamalarla iz eklenecek işlev belirtimlerini belirtir. İkili dosyalardaki diğer tüm işlevler izlenmez.

Ayrı Ekleme seçenekleriyle birden çok işlev belirtimi belirtebilirsiniz.

Aynı ikili dosyadaki işlevlere başvuran Dahil Et ve Dışla seçeneklerini kullanmayın.

Dahil etme , kod kapsamıyla desteklenmez.

funcspec şu şekilde tanımlanır:

[ad alanı<ayırıcı1>] [sınıf<ayırıcı2>]işlevi

<ayırıcı1> , :: yerel kod ve . yönetilen kod içindir.

<ayırıcı2> her zaman ::

Joker karakter * desteklenir. Örneğin, bir ad alanına tüm işlevleri eklemek için şunu kullanın:

MyNamespace::*

Belirtilen ikili dosyadaki işlevlerin tam adlarını listelemek için VSInstr /DumpFuncs kullanabilirsiniz.
DumpFuncs Belirtilen görüntüdeki işlevleri listeler. hiçbir izleme gerçekleştirilmemesi.
ExcludeSmallFuncs Herhangi bir işlev çağrısı yapmayan kısa işlevler olan küçük işlevleri izlemeden dışlar. ExcludeSmallFuncs seçeneği, daha az izleme yükü sağlar ve böylece geliştirilmiş izleme hızı sağlar.

Küçük işlevlerin dışlanması da azaltır.vsp dosya boyutu ve çözümleme için gereken süre.
İşaret:{Yukarıdan| Önce}||,funcname,markid .vsp rapor dosyasındaki bir veri aralığının başlangıcını veya sonunu tanımlamak için kullanabileceğiniz bir profil işareti (raporlardaki verileri sınırlandırmak için kullanılan tanımlayıcı) ekler.

Önce - Hedef işlev girdisinin hemen öncesinde.

After - Hedef işlev çıkışından hemen sonra.

Top - Hedef işlev girdisinin hemen ardından.

Alt - Hedef işlevdeki her dönüşden hemen önce.

funcname - Hedef işlevin adı

Markid - Profil işaretinin tanımlayıcısı olarak kullanılacak pozitif bir tamsayı (uzun).
Kapsam Kapsam izlemesi gerçekleştirir. Yalnızca şu seçeneklerle kullanılabilir: Verbose, OutputPath, Exclude ve Logfile.
Ayrıntılı Ayrıntılı seçeneği, izleme işlemi hakkında ayrıntılı bilgileri görüntülemek için kullanılır.
NoWarn [:[Message Number[;Message Number]]] Tüm uyarıları veya belirli uyarıları gizleme.

Message Number - uyarı numarası. Atlanırsa Message Number , tüm uyarılar gizleniyor.

Daha fazla bilgi için bkz . VSInstr Uyarıları.
Denetim: { İş Parçacığı | İşlemi Genel | } Aşağıdaki VSInstr veri toplama denetimi Seçeneklerinin profil oluşturma düzeyini belirtir:

Başlangıç

StartOnly

Suspend

StopOnly

Askıya Alma

ResumeOnly

İş parçacığı - İş parçacığı düzeyinde veri toplama denetim işlevlerini belirtir. Profil oluşturma yalnızca geçerli iş parçacığı için başlatılır veya durdurulur. Diğer iş parçacıklarının profil oluşturma durumu etkilenmez. Varsayılan değer iş parçacığıdır.

İşlem - işlem düzeyinde profil oluşturma veri toplama denetim işlevlerini belirtir. Profil oluşturma, geçerli işlemdeki tüm iş parçacıkları için başlar veya durur. Diğer işlemlerin profil oluşturma durumu etkilenmez.

Genel - Genel düzey (işlemler arası) veri toplama denetim işlevlerini belirtir.

Profil oluşturma düzeyini belirtmezseniz bir hata oluşur.
Başlangıç: { İç Dış | },funcname Veri toplamayı hedef işlevle ve bu işlev tarafından çağrılan alt işlevlerle sınırlar.

Inside - StartProfile işlevini hedef işleve girdikten hemen sonra ekler. Hedef işlevdeki her dönüşten hemen önce StopProfile işlevini ekler.

Outside - StartProfile işlevini hedef işleve yapılan her çağrıdan hemen önce ekler. Hedef işleve yapılan her çağrıdan hemen sonra StopProfile işlevini ekler.

funcname - hedef işlevin adı.
Askıya Al: { İçeriden Dış | },funcname hedef işlev ve işlev tarafından çağrılan alt işlevler için veri toplamayı dışlar.

inside - SuspendProfile işlevini hedef işleve girdikten hemen sonra ekler. ResumeProfile işlevini her dönüş hedef işlevden hemen önce ekler.

Outside - SuspendProfile işlevini hedef işleve girdiden hemen önce ekler. ResumeProfile işlevini hedef işlevden çıktıktan hemen sonra ekler.

funcname - hedef işlevin adı.

Hedef işlev bir StartProfile işlevi içeriyorsa, SuspendProfile işlevi önüne eklenir. Hedef işlev bir StopProfile işlevi içeriyorsa ResumeProfile işlevi ondan sonra eklenir.
StartOnly: { Yukarıdan Önce | | | },funcname Profil oluşturma çalıştırması sırasında veri toplamaya başlar. Belirtilen konuma StartProfile API işlevini ekler.

Önce - hedef işlev girdisinin hemen öncesinde.

After - hedef işlev çıkışından hemen sonra.

Top - hedef işlev girdisinin hemen ardından.

Alt - her dönüş hedef işlevinden hemen önce.

funcname - hedef işlevin adı.
StopOnly:{İlk|Alttan Önce}||,funcname Profil oluşturma çalıştırması sırasında veri toplamayı durdurur. Belirtilen konuma StopProfile işlevini ekler.

Önce - hedef işlev girdisinin hemen öncesinde.

After - hedef işlev çıkışından hemen sonra.

Top - hedef işlev girdisinin hemen ardından.

Alt - her dönüş hedef işlevinden hemen önce.

funcname - hedef işlevin adı.
SuspendOnly:{İlk|Alttan Önce}||,funcname Profil oluşturma çalıştırması sırasında veri toplamayı durdurur. SuspendProfile API'sini belirtilen konuma ekler.

Önce - hedef işlev girdisinin hemen öncesinde.

After - hedef işlev çıkışından hemen sonra.

Top - hedef işlev girdisinin hemen ardından.

Alt - her dönüş hedef işlevinden hemen önce.

funcname - hedef işlevin adı.

Hedef işlev bir StartProfile işlevi içeriyorsa, SuspendProfile işlevi önüne eklenir.
ResumeOnly:{İlk|Alttan Önce}||,funcname Profil oluşturma çalıştırması sırasında veri toplamayı başlatır veya sürdürür.

Genellikle bir SuspendOnly seçeneği profil oluşturmayı durdurduktan sonra profil oluşturmayı başlatmak için kullanılır. Belirtilen konuma bir ResumeProfile API'sini ekler.

Önce - hedef işlev girdisinin hemen öncesinde.

After - hedef işlev çıkışından hemen sonra.

Top - hedef işlev girdisinin hemen ardından.

Alt - her dönüş hedef işlevinden hemen önce.

funcname - hedef işlevin adı.

Hedef işlev bir StopProfile işlevi içeriyorsa ResumeProfile işlevi ondan sonra eklenir.

Ayrıca bkz.