Go 言語では、関数の実行時間を取得するために time パッケージの Because() 関数を使用できます。Go 言語の公式ドキュメントでの Because() 関数の紹介は次のとおりです。
func Since(t Time) Duration
Because() 関数は、 t から現在までの経過時間を返します。これはtime.Now().Sub(t)と同等です。
【例】since()関数を使用して、関数の実行時間を取得します。
package main
import (
"fmt"
"time"
)
func test() {
start := time.Now() // 現在の時間を取得
sum := 0
for i := 0; i < 100000000; i++ {
sum++
}
elapsed := time.Since(start)
fmt.Println("関数の実行にかかった時間:", elapsed)
}
func main() {
test()
}
実行結果は次のとおりです。
関数の実行にかかった時間: 39.8933ms
time.Now().Sub() の関数は Because() 関数に似ていると上で述べましたが、関数の実行時間を取得するために time.Now().Sub() を使用したい場合は、上記のコードの 14 行目を単純化する必要があります。変更するだけです。
【例2】 time.Now().Sub()を使用して関数の実行時間を取得します。
package main
import (
"fmt"
"time"
)
func test(){
start := time.Now() // 現在の時刻を取得
sum := 0
for i := 0; i < 100000000; i++ {
sum++
}
elapsed := time.Now().Sub(start)
fmt.Println("この関数の実行にかかった時間:", elapsed)
}
func main(){
test()
}
実行結果は次のとおりです。
この関数の実行にかかった時間: 36.8769ms
コンピューターの CPU やその他の要因の影響により、関数の実行時間を取得する際の結果は毎回わずかに異なりますが、これは正常な現象です。






![2021 年に Raspberry Pi Web サーバーをセットアップする方法 [ガイド]](https://i0.wp.com/pcmanabu.com/wp-content/uploads/2019/10/web-server-02-309x198.png?w=1200&resize=1200,0&ssl=1)





