不知道还有没有别的更合理的方案,我现在想到的方案是这样:

应用有个需求,是定时去服务器获取一个账号是否有新的动态。
就像新浪微博那种,打开客户端,会自动提示有多少个 @ 。

Timer timer = new Timer(); timer.scheduleAtFixedRate(    new TimerTask() {        public void run() {            try {
                checkEvent();
                Thread.sleep(1000);
            } catch (Exception ie) {
            }
        }
    }, 1000, 1000 * 30);

我这样做会不会有什么风险?
求有经验的慕友分享一下。


牧羊人nacy
浏览 108回答 2
2回答

慕慕森

考虑用Handler吧Handler handler; @Override  public void onCreate(Bundle savedInstanceState) {     // ...      handler = new Handler() {        @Override         public void handleMessage(Message msg) {             updateUI();         }     };     Thread thread = new Thread() {        @Override         public void run() {            while(true) {                 Message msg = new Message();                handler.sendMessage(msg);                try {                     sleep(3*1000); // 3 seconds                 } catch (InterruptedException e) {                 }             }                                }     };     thread.start();  } private synchronized void updateUI() {     // ...  }

红颜莎娜

应该优先使用AlarmManager,Handler比较耗电,而且容易导致内存泄露。
打开App,查看更多内容
随时随地看视频慕课网APP