2011-09-13 12 views
6

Bazı C++ kodlarını kullanıyorum için Very Sleepy kullanıyorum ve Kaynak görünümünde, kireç üzerinde kırmızı harcanan zaman harcanan ölçümleri gösterdiğinin farkına varıyorum, her zaman yalnızca yöntemin açık olduğu satırlarda ölçüm var ya da yakın küme ayracı, bazı durumlarda bu işlevdeki diğer kod satırlarına göre oldukça yüksekti.Very Sleepy profiler'da kaşlı ayraçların yakınında sunulan zaman ölçümleri neyi temsil ediyor?

İlk varsayımım, bu yöntem parametrelerinin, açılış küme ayracı için yığına yığılması için harcanan süreyi ve kapanış küme ayracı için yığıtın harcanması için harcanan zamanı göstermektir. Bu doğru mu?

+0

Rutinler, dizeler gibi ayrılmış ve yok edilen yerel değişkenleri içeriyor mu? Bu durum, gizli kaşlı ayraçların, yığın halindeyken yığındaki çizgiler olmasına bağlı olarak, gizli gizli yeni oluşuma ve tahribata yol açabilir. –

+0

@MikeDunlavey Bunu yalnızca ilkel yerel değişkenlere sahip bir yöntem olarak görüyorum. –

+0

Eh, bu yöntemi kullanan kişiler arasındayım (http://stackoverflow.com/questions/375913/what-can-i-use-to-profile-c-code-in-linux/378024# 378024) ve hiç şüphen yok. Bu, talimatlara göre, tam olarak ne zaman aldığını söyler. (VerySleepy'nin kaynak kodunu aldım, ama sadece bakmaktan, aslında ne yaptığını söylemek zor.) –

cevap

4

Twitter'da "Sleepy" programının yöneticisi olan Richard Mitton'dan (@grumpydev) bir yanıt aldım: "Büyük olasılıkla işlev en iyi duruma getirildi, böylece satır numarası tam olarak kodla eşleşmiyor Yani, işlevin akışı boyunca yayılmak yerine, her zaman başlangıçta toplanır. "

İlgili konular