Esto debería tener una respuesta fácil, pero no pude encontrar ninguna. Y como todavía soy un muñeco androide, vine aquí para preguntarle a la gente.¿Hay un límite de AsyncTasks para ejecutarse al mismo tiempo?
He estado haciendo este proyecto que ejecuta 10 AsyncTasks en el inicio. Cada tarea contiene 3 URL que recopilan datos allí y no hacen nada importante en la aplicación (aún).
También tengo 10 textviews que utilizo para hacer un seguimiento del progreso de las AsyncTasks.
Cuando una tarea se inicia el TextView adecuada se pone en "Inicio" Cuando una tarea está progresando establece su TextView apropiado "Descarga" Cuando se termina una tarea que establece su TextView apropiado "Terminado"
Esto es lo que observé y me preguntaron sobre AsyncTask. Cuando inicio la aplicación, noto que 5 de las textviews están cambiando al marcador "Descargando", así que veo 5 AsyncTasks haciendo su trabajo como deberían. Cuando termine, inicia una nueva AsyncTask. Sin embargo, nunca superan ese límite de 5.
¿Qué ocasiona que este límite de 5 AsynchTasks se ejecute al mismo tiempo? ¿Causé esto en algún archivo que no puedo encontrar? ¿Es este un límite de Android 2.3.3? ¿Tal vez un límite del dispositivo que estoy usando para simular la aplicación?
¿Alguien puede elaborar para mí?
Esta pregunta se trata aquí: http://stackoverflow.com/questions/3077461/asynctask-threads-never-die-android – jengelsma
@jengelsma No realmente. Definitivamente está relacionado, pero por qué no pasa de 5 es algo diferente de por qué nunca pasa por debajo de 5. Todavía tiene que ver con el tamaño del grupo central, pero esa pregunta/respuesta no aborda por qué ese tamaño de grupo central limitaría el número de tareas simultáneas en 5 cuando el tamaño máximo de la agrupación es 128. – kabuko
Creo que está utilizando AsyncTask.execute() en lugar de AsyncTask.executeOnExecutor() –