2011-02-08 51 views
3

嗨,我想找出調用方法或創建對象所需的最長時間。單聲道垃圾回收最差情況下的性能

我想到了在創建對象或調用某些析構函數之前調用GC.Collect()之類的東西。

有沒有人找到一些(或)最糟糕的情況下的一些提示或想法?

最好的問候

回答

1

看到這個thread。把答案代碼放在一個循環中,並記錄下最低時間,但實際上這可能不是相互影響的。這是更好的性能meassaring:

在你運行該代碼的實際應用,從而獲得真實的生活場景

運行在測試的感覺說的100000個呼叫要 測試任何方法那麼你可以採取平均的通話時間,這應該會給你一個更好的指示,如果你的方法很慢或沒有

+0

那麼thx的答案,但問題的本質不是要找出方法:「是慢還是慢?「。問題是:「這個方法有多慢?」。在託管代碼中,GC總是存在問題,在Mono中是保守的,所以也許除了隨機測試或甚至一些配置之外,還有其他方法可以提供更可靠的隨機測試結果。 – Gobliins 2011-02-09 07:55:06