簡體   English   中英

我如何使一個微秒計時器?

[英]c# — How can I make a microsecond timer?

誰能幫我?
如何在C#中創建微秒計時器?
像其他計時器一樣,我想在計時器主體中執行某些操作。

如果您熟悉秒表,則可以通過以下方式將刻度頻率設置為毫秒:

Stopwatch stopWatch = new Stopwatch();
stopWatch.ElapsedTicks / (Stopwatch.Frequency / (1000L*1000L));

應該可以解決您的問題。

在這里您可以下載MicroLibrary.cs: http : //www.codeproject.com/Articles/98346/Microsecond-and-Millisecond-NET-Timer
您的問題的示例:

    private int counter = 0;

    static void Main(string[] args)
    {
        Program program = new Program();

        program.MicroTimerTest();



    }



    private void MicroTimerTest()
    {

        MicroLibrary.MicroTimer microTimer = new MicroLibrary.MicroTimer();
        microTimer.MicroTimerElapsed +=
            new MicroLibrary.MicroTimer.MicroTimerElapsedEventHandler(OnTimedEvent);

        microTimer.Interval = 1000; // Call micro timer every 1000µs (1ms)
        microTimer.Enabled = true; // Start timer

        System.Threading.Thread.Sleep(2000); //do smth 2 seconds

        microTimer.Enabled = false; // Stop timer (executes asynchronously)

        Console.ReadLine();
    }

    private void OnTimedEvent(object sender,
                            MicroLibrary.MicroTimerEventArgs timerEventArgs)
    {
        // Do something every ms
        Console.WriteLine(++counter);
    }
}

}

System.Threading.Thread.SpinWait

對於實現此“ MicroTimer”低級類目的也是至關重要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM