Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class HiPerfTimer
- {
- [DllImport("Kernel32.dll")]
- private static extern bool QueryPerformanceCounter(out long lpPerformanceCount);
- [DllImport("Kernel32.dll")]
- private static extern bool QueryPerformanceFrequency(out long lpFrequency);
- private long startTime, stopTime;
- private long freq;
- public HiPerfTimer()
- {
- startTime = 0;
- stopTime = 0;
- if (QueryPerformanceFrequency(out freq) == false)
- {
- throw new Win32Exception();
- }
- }
- public void Start()
- {
- Thread.Sleep(0);
- QueryPerformanceCounter(out startTime);
- }
- public void Stop()
- {
- QueryPerformanceCounter(out stopTime);
- }
- public double Duration
- {
- get
- {
- return (double)(stopTime - startTime) / (double) freq;
- }
- }
- }
Add Comment
Please, Sign In to add comment