2012-02-24 15 views

Respuesta

20

Los subprocesos son tareas de procesamiento genéricas que pueden hacer la mayoría de las cosas, pero una cosa que no pueden hacer es actualizar la interfaz de usuario.

Los manejadores, por otro lado, están enlazados a hilos que le permiten comunicarse con el hilo de la interfaz de usuario (actualizar la interfaz de usuario).

Por ejemplo, mostrar un brindis o actualizar una barra de progreso a través de un mensaje (ejecutable) publicado en un controlador, pero no puede si inicia este ejecutable como un hilo.

Con controlador también puede tener cosas como MessageQueuing, programación y repetición.

Todavía tengo que encontrar una situación en la que necesité un hilo en Android.

Principalmente uso una combinación de AsyncTasks y Handlers.

Controladores para las tareas antes mencionadas.

AsyncTasks para descargar/ir a buscar los datos y encuestas etc.

Usted puede leer el artículo aquí desarrollador "Painless Threading" por más de roscado en androide.

Corrección: Cada instancia de Manejador está asociada con un solo hilo y la fila de mensajes de ese subproceso. No son hilos en su propio nombre. como se describe here.

+3

Los manipuladores no son hilos – Selvin

+0

Es cierto, se corrigió – MahdeTo

2

Un hilo define un proceso en ejecución. Como si tuviera un hilo principal (UI) en Android. y todos los otros hilos se ejecutan en segundo plano. (en paralelo).

Handler es completamente diferente, es como iniciar la tarea definida en un controlador ..

Para limpiar su confusión, y realizar el roscado en Android debe leer: http://android-developers.blogspot.com/2009/05/painless-threading.html

y sugeriría AsyncTask en lugar de usar Thread en todos los casos.

0

Por qué usamos los manipuladores con hilo:

Cuando instalamos una aplicación en Android entonces crear un hilo para que la aplicación llamada PRINCIPAL interfaz de usuario de rosca, Todas las actividades se ejecutan dentro de ese hilo, por el modelo de un solo hilo androide regla que no podemos acceder a los elementos de la interfaz de usuario (mapa de bits, vista de texto, etc.) directamente para otro subproceso definido dentro de esa actividad.

Por lo tanto, si desea acceder a los elementos del subproceso principal de la interfaz de usuario por otro subproceso, utilizaremos los controladores.

Cuestiones relacionadas