此函数驻留在服务中,当被活动调用时,它应该生成一个随机数并将其添加到 ArrayList。每次添加新项目时,它都会尝试通过 update 更新 UI,该更新调用 runOnUiThread 以使用这些数字绘制折线图,然后等待 1 秒。我希望每秒更新一次。有没有办法强制活动清除执行其消息队列?截至目前,它会等到该线程完成执行后再更新。我应该在 AsyncTask 中实现它吗?
public void pollDP(int numPt){
final Random gen = new Random();
final int numPtF = numPt;
serverLoadList = new ArrayList<Integer>();
new Thread(new Runnable(){
@Override
public void run(){
for(int i = 0; i < numPtF; i++){
serverLoadList.add(gen.nextInt());
update();
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).run();
}
}