我想追蹤一個c#移動應用程序內的性能,以瞭解一些長時間運行的方法所需的時間量。目標是在方法層面瞭解性能。 該跟蹤將在運行時決定。在c#中的性能跟蹤
說出來的第一個想法是維持一個全局變量「doWeHaveToTrace」,每一個potentialy tracable方法被調用的時間來檢查它,跟蹤它,如果這個變量是真實的。 而在這種情況下,我可能會使用Logger或TraceListener將跟蹤信息寫入文件。
但我認爲這種機制是相當重的,因爲一個變量在每個方法進行檢查,並記錄呼叫必須被編碼。
我也想過方面編程(插入之前()和()之後方法跟蹤代碼),但我不認爲編程方面可能這個項目中是允許的。
所以我在想,有沒有可能提供這樣的性能跟蹤任何其他好的機制?是否有可能追蹤整個方法?並決定在運行時停止或恢復跟蹤?
我希望我是清楚的, 感謝