estoy tratando de entender el código here, en concreto la clase anónimanuevo Runnable() pero no hay un nuevo hilo?
private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
final long start = mStartTime;
long millis = SystemClock.uptimeMillis() - start;
int seconds = (int) (millis/1000);
int minutes = seconds/60;
seconds = seconds % 60;
if (seconds < 10) {
mTimeLabel.setText("" + minutes + ":0" + seconds);
} else {
mTimeLabel.setText("" + minutes + ":" + seconds);
}
mHandler.postAtTime(this,
start + (((minutes * 60) + seconds + 1) * 1000));
}
};
El artículo dice
El controlador ejecuta el código de actualización como parte de su hilo principal, evitando la sobrecarga de un segundo hilo ..
¿No debería crear una nueva clase Runnable hacer un nuevo segundo subproceso? ¿Cuál es el propósito de la clase Runnable aquí además de poder pasar una clase Runnable a postAtTime?
Gracias
No. Runnables no son 'Thread's. http://docs.oracle.com/javase/tutorial/essential/concurrency/runthread.html –