MonoでSystem.Diagnostics.Stopwatchを使う

サラトガIT日記 > Mono > MonoでSystem.Diagnostics.Stopwatchを使う MonoでSystem.Diagnostics.Stopwatchを使う

※実経験の記憶を頼りに自宅の PC 環境(VMWareなど)で再現している内容もあるのでご注意下さい

2010-08-20

 

VisualStadio(C#)で、System.Diagnostics.Stopwatch を使って処理時間を計測するプログラムを作成してみた。Windows の .NET Framework では動作したので、そのまま Linux の Mono 環境でも動作確認。通常、VS でビルドされた exe がそのまま Mono でも実行できるのですが、Stopwatch と別の箇所で想定した数値が計測できなかったので、試しに Linux(Mono)上でコンパイルしてみる。

Mono のバージョンは 2.6 系ですが、コンパイルには成功するものの実行時にエラーとなってしまいました。

$ mcs test.cs

test.cs(58,9): error CS0246: The type or namespace name `Stopwatch' could not be found.
Are you missing a using directive or an assembly reference?
Compilation failed: 1 error(s), 0 warnings

これは、間違って mcs コマンドでコンパイルしたため 1.1 のプロファイルが使われてしまったようです。2.0 の場合は gmcs コマンドを使わないといけないですね。他にも 2.1 の smcs、4.0 の dmcs(Mono2.6からサポート)があります。

$ gmcs test.cs

$ mono test.exe

Time:460(ms)

関連記事

上記の記事に関連する記事(最新の10件)です。