android - studio - Ejecutar tarea por tiempo definido
programacion android pdf 2018 (1)
Si quiero ejecutar una tarea por un tiempo específico, guardo el tiempo que comienza en un ''largo'' como ese:
long now = System.currentTimeMillis();
Y luego simplemente compruebe cuánto tiempo ha pasado desde que comenzó la tarea (suponiendo que es un bucle de algún tipo) mientras se ejecuta, así que si quería ejecutar algo durante 5 segundos:
long now = System.currentTimeMillis();
int runtime=5000;//in milliseconds
do
{
//enter your code here
}while (now+runtime<System.currentTimeMillis());
¿Hay en Android una forma eficiente de ejecutar una tarea solo por tiempo limitado? Actualmente utilizo un controlador con onPostDelayed () y compruebo cada ejecución si la marca de tiempo actual es más alta que mi marca de tiempo predefinida.
Estoy buscando una solución como CountdownTimer pero sin tics. Solo quiero definir un inicio y un tiempo de finalización y mi tarea debería realizarse en este período.