¿Qué son las tareas de sincronización y asíncrona en la programación de Android?

En Android cuando inicia una aplicación, obtiene un proceso dedicado y un hilo (llamado hilo principal / UI) en el que se ejecuta su aplicación. Este es un único subproceso predeterminado en el que se ejecuta todo.

La mayoría de las veces esto estaría bien. Todo lo que ejecuta en este subproceso principal / UI se ejecuta de forma síncrona. Eso es uno tras otro. Sin embargo, algunas veces puede ser un obstáculo importante. Si comienza a realizar tareas de ejecución prolongada en el hilo principal (como un cálculo realmente largo, más de 5 segundos), hasta que finalice esa tarea, no puede hacer nada en esa aplicación. Su tarea de larga duración está bloqueando el hilo de la interfaz de usuario. Si no se resuelve en cinco segundos, esto creará una aplicación que no responde (cuadro de diálogo ANR).

Esa es la razón por la cual una gran carga de trabajo debe ser alejada del hilo de la interfaz de usuario. Puede hacer esto usando Java multi-threading normal. Pero dado que este escenario es tan común en Android, Android ha creado una API que lo ayuda a hacerlo de manera fluida. Esta API se llama AsycnTask.

Para más detalles, visite esta serie en YouYube:

Espero que esto ayude.

Las tareas asíncronas se utilizan para realizar operaciones en segundo plano. Normalmente se utilizan para tareas cortas que se ejecutan en segundo plano. La mayoría de las veces los resultados de la tarea en segundo plano se publican en la interfaz de usuario.

Por ejemplo, suponga que tiene un botón en la interfaz de usuario que carga parte del contenido (página del servidor o archivo). Android tiene un modelo de subproceso único, por lo que si la tarea se realiza en el subproceso de la interfaz de usuario, la interfaz de usuario dejaría de responder hasta que se complete la tarea. Esto no es lo que se espera. En tales casos, la tarea se puede ejecutar como una tarea asíncrona en otro hilo. El resultado de la tarea se puede mostrar en la interfaz de usuario y, a continuación, la interfaz de usuario seguirá respondiendo. Este método se sugiere para tareas cortas y no para tareas en segundo plano largas.

Consulte esto para obtener más detalles sobre cómo usar las tareas asíncronas.

PD: No creo que haya algo llamado tarea de sincronización. No creo que ese término exista realmente.