プログラミングしていると、時折、処理時間の掛かる処理が出来てしまいますよね?!
そんなときは、ポイント毎に処理時間を計測して、時間の掛かっている処理を効率化してあげましょう。
というわけで、今回は、処理時間の計測方法をご紹介いたします。
コード
C#には、Stopwatchクラスが存在します。
// Stopwatchクラスのインスタンス生成
var sw = new System.Diagnostics.Stopwatch();
// 計測開始
sw.Start();
/* 処理A */
// 計測終了
sw.Stop();
// 結果取得
Console.WriteLine($"処理A:{sw.ElapsedMilliseconds}ミリ秒");
// リセットしてから計測開始
sw.Restart();
/* 処理B */
// 計測終了
sw.Stop();
// 結果取得
Console.WriteLine($"処理B:{sw.ElapsedMilliseconds}ミリ秒");
TimeSpan構造体
ちなみに、計測時間は、TimeSpan構造体としても取得することが出来ます。
時、分、秒を分けて取得したい場合は、TimeSpan構造体が便利だと思います。
TimeSpan ts = sw.Elapsed;
Console.WriteLine($"{ts.Hours}時間 {ts.Minutes}分 {ts.Seconds}秒 {ts.Milliseconds}ミリ秒");
詳しくは、公式を確認してください。
TimeSpan 構造体 (System)
時間間隔を表します。
最後に
Stopwatchクラスについても公式へのリンクを載せておきましょう。
Stopwatch クラス (System.Diagnostics)
経過時間を正確に計測するために使用できる一連のメソッドとプロパティを提供します。
処理時間は、少しでも早いに越したことはありません。
あなたが遅いなぁと感じたものは、他の人も遅いと思うはず!!
みんながハッピーになるプログラムを作っていきましょう。
コメント