有時候,能夠知道一個計算執(zhí)行消耗的時間是非常有意義的,尤其是在對比和基準(zhǔn)測試中。最簡單的一個辦法就是在計算開始之前設(shè)置一個起始時候,再由計算結(jié)束時的結(jié)束時間,最后取出它們的差值,就是這個計算所消耗的時間。想要實現(xiàn)這樣的做法,可以使用 time 包中的 Now() 和 Sub 函數(shù):
start := time.Now()
longCalculation()
end := time.Now()
delta := end.Sub(start)
fmt.Printf("longCalculation took this amount of time: %s\n", delta)
您可以查看示例 6.20 fibonacci.go 作為實例學(xué)習(xí)。
如果您對一段代碼進(jìn)行了所謂的優(yōu)化,請務(wù)必對它們之間的效率進(jìn)行對比再做出最后的判斷。在接下來的章節(jié)中,我們會學(xué)習(xí)如何進(jìn)行有價值的優(yōu)化操作。