Ejemplo n.º 1
0
        @Override
        public void handleMessage(Message m) {
          switch (m.what) {
            case MSG_START:
              mHandler.sendEmptyMessage(MSG_UPDATE);
              break;
            case MSG_STOP:
              mHandler.removeMessages(MSG_UPDATE);
              break;
            case MSG_UPDATE:
              int[] pids = mMemoryService.getTrackedProcesses();

              final int N = getChildCount();
              if (pids.length != N) initViews();
              else
                for (int i = 0; i < N; i++) {
                  ProcessWatcher pw = ((ProcessWatcher) getChildAt(i));
                  if (indexOf(pids, pw.getPid()) < 0) {
                    initViews();
                    break;
                  }
                  pw.update();
                }
              mHandler.sendEmptyMessageDelayed(MSG_UPDATE, UPDATE_RATE);
              break;
          }
        }