2013-06-10 27 views
11

üzerinden adım adım saptayınsınıfının, IsAttached özelliğine sahip System.Diagnostics ad alanı içinde olduğunun farkındayım.Hata Ayıklayıcı Bağlandıysa * ve *

Bu çağrıyı artırabilecek ve aslında sadece eklenmek yerine koddan geçip geçmeyeceğimizi söyleyebilecek bir yer var mı? Bunun çok olası olmadığını anlıyorum, ama bilmek faydalı olacaktır.

  1. ilk kez (için ayıklayıcı "tatili" hata ayıklama moduna girer, ekli sonra:

    DÜZENLEME

    Belki daha iyi bir soru

    yerine bazı kod çalıştıran "adım atar"

  2. Yeniden çalıştığında (ancak hala takılı, ancak "adım adım" değil).
+0

İlginç görünüyor ... ne yapmaya çalışıyorsunuz? –

+0

Bunun ne işe yaradığını merak ediyorum. Bir örnek verebilir misin? Algılama işlemini yapan çizgiye adım atıyor olsanız, sadece (eğer mümkünse) adım attığınızı anlayabilirsiniz. – hatchet

+0

@hatchet, Bazı havuzlanmış nesnelere dayanan nispeten kısa bir zamanlayıcısında çalışan bir kod var. Çalışma zamanı, bu iyi çalışıyor - kodun içine girdiğinizde sorunlara neden olabilir. Muhtemelen sağlamlık amaçları için kullanacağım alternatifler var, ama bu soruyu ele alacağımı düşündüm. :) –

cevap

2

Hata ayıklayıcı durumunu Debugger.CurrentMode özelliğinden alabilirsiniz. Ancak bu sadece şu anda kesinti durumunda olup olmadığını veya programın çalışıp çalışmadığını söyleyecektir. "Adım" modu yoktur, bu hemen hemen bunu sağlayan bir anlık momenttir, eğer bunun hakkında bir şeyler bulursanız, o zaman zaten çok geç olacaktı. Pratik bir iş parçacığı olma garantisi.

+0

Mükemmel. Özünde, benim için beklediğim mola durumdu. Yine de, etrafta tasarım yapmayacağım - ama kesinlikle bilmek güzel ve aradığım şey buydu. –

+0

'System.Diagnostics.Debugger'' CurrentMode' özelliği yok, yalnızca [EnvDTE.Debugger] (https://msdn.microsoft.com/en-us/library/envdte.debugger.currentmode.aspx) var o. Korkarım ki bu sadece VS uzantıları için erişilebilir, hata ayıklama programı değil. – robert4

İlgili konular