If you don't mind calling out to Win32 you can use the PerformanceCounter APIs like this:
using System; using System.Threading; using System.Runtime.InteropServices; using System.Security; [SuppressUnmanagedCodeSecurity] public sealed class StopWatch { private long startTime = 0; private long stopTime = 0; public void Start() { stopTime = 0; QueryPerformanceCounter(ref startTime); } public void Stop() { QueryPerformanceCounter(ref stopTime); } public long GetElapsedTicks() { if (stopTime == 0) return 0; return stopTime - startTime; } public double GetElapsedSeconds() { if (stopTime == 0) return 0.0; long frequency = 0; QueryPerformanceFrequency(ref frequency); return (stopTime - startTime) / (double) frequency; } [DllImport("kernel32")] private static extern bool QueryPerformanceCounter(ref long lpPerformanceCount); [DllImport("kernel32")] private static extern bool QueryPerformanceFrequency(ref long lpFrequency); } ----- Original Message ----- From: "Mattias Konradsson" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, April 10, 2002 5:58 AM Subject: [DOTNET] Measuring performance > I want to be able to measure how many milliseconds/seconds a method takes to > execute (and print it right on the page, not store it elsewhere), I hazard a > guess > that it's possible with performance counters but I haven't been able to find > the relevant code, can anyone shove me in the right direction? > > Best regards > ---- > Mattias Konradsson > "Reinventing the wheel since 1977" > > You can read messages from the DOTNET archive, unsubscribe from DOTNET, or > subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com.