15

共有System.Diagnostics.Stopwatchインスタンスがある場合、複数のスレッドがshared.ElapsedTicks安全な方法で呼び出して正確な結果を得ることができますか?

GetTimeStamp()このようにStopwatchの共有インスタンスを使用することと、静的メソッドを使用することの間に、スレッドセーフ/精度の点で違いはありますか?

私は約180ミリ秒の間隔を測定していますが、共有インスタンスを使用すると、予想よりも短いかなりの数を含め、結果の広がりが大きくなることがわかりました。

マシンには複数のCPUが搭載されています(2 * Intel X5550の価値があります)

4

4 に答える 4

14

MSDNから:

インスタンスメンバーは、スレッドセーフであることが保証されていません。

于 2011-07-12T13:02:52.080 に答える
5

ソースコードを見ると、スレッドセーフではありません。

于 2011-07-12T13:07:07.790 に答える