程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> service-創建一個服務,重復執行某個方法

service-創建一個服務,重復執行某個方法

編輯:編程綜合問答
創建一個服務,重復執行某個方法

我創建了一個服務器,每5分鐘運行一次。但是當程序執行到while(true),就會報錯。我估計這是不允許的。有什麼更好的方法能重復執行某一個方法呢?

public class repService extends Service {

    @Override
    public IBinder onBind(Intent intent) {
        // TODO Auto-generated method stub
        return null;
    }

    while(true){
        Thread timer = new Thread(){
            public void run(){
                try {
                    sleep(5000);
                    // do something
                } catch (InterruptedException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                } finally {
                    // do something
                }
            }
        };
        timer.start();  
    }
}

最佳回答:


你可以使用 Timer().schedule 來每5分鐘執行一次相同的任務。

new Timer().schedule(new TimerTask() {

            @Override
            public void run() {
                //Do your task here

            }
        }, System.currentTimeMillis(), 5000);

如果你需要修改 UI 部分,要在 runOnUiThread 中添加上面的代碼。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved