2012-02-12 5 views
16

Yazmadığım bir kodu incelediğimde, hata ayıklama modunda tutulmayı başlatırım ve bir programı anlamak için rakamları kullanırım. onlar DB'den alınan öğeler nı eğer Örneğin, vb bir hizmette n işlenen öğeler var olduğunu bilmek ilginç olabilirHata ayıklama ve kesme noktası isabetlerini sayma

döngüler kullanıldığında, işler daha karmaşık olsun: Biz eğer “while” döngüsünde, yürütme sayısı tanımlanmamıştır ve alternatifler varsa, yürütme akışı büyük ölçüde değişebilir. Bu amaçla

, bazen bir kod kısmında bir kesme noktası ayarlamak ve bunu ulaşmak kaç kere saymak. Tabii

, çok uygun değil ve ben kesme noktası isabet sayısını saymak için bir yol olup olmadığını merak ediyorum. Eclipse'in belirli sayıda isabetten sonra yürütmeyi askıya alabileceğini biliyorum ancak Eclipse'in bunları normal bir yürütme akışında saymasını istiyorum.

Bu konuda görüşlerinizi bildirmekten memnuniyet duyarız.

Teşekkürler!

cevap

18

Ara noktanıza bir koşul ekleyebilirsiniz. En basit bir böyle bir şey görünebilir:

System.err.println("Passing checkpoint"); 
return false; 

Ayrıca kendi statik sınıf arayarak uzatabilirsiniz: sayma kesme noktaları alternatif olarak

org.foo.StaticCounter.COUNTER++; 
System.err.println("Passing checkpoint " + org.foo.StaticCounter.COUNTER); 
return false; 
+0

Clever. Araç takımımda her zaman bir StaticCounter sınıfı tutacağımı düşünüyorum. Nesne olmayan prosedür kodları hata ayıklama için yararlı olabilir :) Teşekkürler! –

1

, bir profil oluşturma aracı kullanabilirsiniz, böyle Bir here olarak.

+0

Bence cevabınız haklı ama ben breakpoint hit sayıyorum, performansları analiz etmekten ziyade anlamak için daha fazla endişe duyuyorum. Bir parça kodda kaç kez gitmemiz gerektiğini değerlendirerek bazı sezgileri onaylıyorum. Bununla birlikte, karmaşık olmayan objektif prosedür kodları için kullanırım. Yine de cevabınız için teşekkürler :) –