簡體   English   中英

如何在Java中使用計時器

[英]How can i use timer in Java

我正在從串行端口讀取數據。 數據來自IMU,我正在開發手勢識別算法。 我不想使用Thread.sleep()方法停止整個程序,我只需要讀取10ms間隔的兩組數據。 我的應用程序具有擺動GUI。

    float x0, x1;
    x0 = getXacc();
    x0 += 17000;
    x0 /= 1000;
    //wait 10ms
    x1 = getXacc();
    x1 += 17000;
    x1 /= 1000;

使用Thread.sleep()

float x0, x1;
x0 = getXacc();
x0 += 17000;
x0 /= 1000;
Thread.sleep(10);  // tell current Thread to sleep for 10 milliseconds
x1 = getXacc();
x1 += 17000;
x1 /= 1000;

注意: Java API不保證Thread.sleep()會在指定的確切時間(本例中為10ms)內暫停當前線程的執行,但是它將竭盡全力實現這一目標。

使用@TimBiegeleisen答案並將其代碼放入新的線程中:

new Thread(){
    @Override
    public void run(){
        //TimBiegeleisen code
    }
}.start();

暫無
暫無

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

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