Diferencia entre runnable y hilo

Diferencia entre runnable y hilo

Diferencia de clave - Runnable VS hilo
 

Un programa en ejecución se conoce como un proceso. El proceso se puede dividir en múltiples subprocesos. Por ejemplo, Microsoft Word es un proceso. Al mismo tiempo, verifica el error de ortografía y la gramática. Ese es un subprocesado. Estos subprocesos se conocen como hilos. Múltiples lectura es el proceso de ejecutar múltiples hilos simultáneamente. Las aplicaciones roscadas se pueden construir utilizando diferentes lenguajes de programación. Runnable y hilo están asociados con la programación Java. Hay dos métodos en Java para crear un hilo mediante la implementación de una interfaz ejecutable o extendiendo la clase de subprocesos. Al implementar Runnable, muchos subprocesos pueden compartir el mismo objeto de subproceso mientras se extiende la clase de subprocesos, cada hilo tiene un objeto único asociado con él. Eso es el diferencia clave entre runnable y hilo.

CONTENIDO

1. Descripción general y diferencia de claves
2. Que es ejecutable
3. Que es el hilo
4. Similitudes entre runnable y hilo
5. Comparación de lado a lado: hilo de ejecución vs en forma tabular
6. Resumen

Que es ejecutable?

Un hilo pasa por algunos estados. El "nuevo" es el comienzo del ciclo de vida del hilo. Después de que el método Start () llame a un nuevo hilo, se ejecuta. Si el planificador de subprocesos selecciona el hilo, transita al estado en ejecución.  El hilo está esperando el estado si ese hilo está esperando que otro hilo realice una tarea. Después de que el hilo completa el trabajo, va al estado de terminación.

Se puede implementar un hilo utilizando la interfaz runnable. Consulte el siguiente programa.

Figura 01: programa Java para crear un hilo utilizando la interfaz runnable

Según el programa anterior, la demostración de clase ejecutable implementa la interfaz ejecutable. El método run () está dentro de la clase que implementa la interfaz runnable. Es el punto de entrada para el hilo. La lógica está en el método run (). En el programa principal, se crea un hilo definiendo un objeto que instanció a partir de la clase de demostración ejecutable. Es t1. El método Start () se llama usando T1.

Consulte el siguiente programa.

Figura 02: programa Java para crear un hilo para ejecutar un bucle, implementando la interfaz ejecutable

Según el ejemplo anterior, la clase de demostración de clase implementa la interfaz ejecutable. La lógica para ejecutar usando el hilo está escrito en el método run (). En el programa principal, se crea un hilo definiendo un objeto que instanció a partir de la clase de demostración ejecutable. Es t1. Luego, el método Start () se llama usando T1.

Que es el hilo?

El otro método para crear un hilo es extender la clase de subprocesos. Consta de tres pasos. Primero es declarar que la clase se extiende la clase de hilo. Posteriormente, el método run () debe escribirse. Tiene la secuencia de pasos que el hilo debe ejecutar.  Finalmente, se crea el objeto de subproceso, y se llama al método Start () para iniciar la ejecución del hilo. Consulte el siguiente programa.

Figura 03: Programa Java que extiende la clase de subprocesos

Según el programa anterior, la clase Mythread extiende la clase de hilo. Anula el método de ejecución. El método run () contiene la lógica que se ejecutará por el hilo. Es el punto de entrada al hilo. Entonces se crea el objeto de subproceso. Es hilo1. El hilo se inicia usando el método Start (). Ejecutará una llamada para ejecutar () método.

Un programa de ejemplo de dos clases que extienden la clase de hilo es el siguiente.

Figura 04: programa Java con dos clases que extienden la clase de hilo

Según el programa anterior, tanto la clase A como B están extendiendo la clase de hilos. Ambas clases tienen su implementación del método run ().  El hilo principal es que ejecuta el método main (). Antes de que el hilo principal muera, crea e inicia el hilo1 y el hilo2. Para cuando el hilo principal llegó al final del método principal, tres hilos se ejecutan en paralelo. No hay un orden específico en el que los hilos dan salida. Una vez que se inicia el hilo, es difícil decidir el orden que ejecutarán. Corren de forma independiente.

¿Cuáles son las similitudes entre runnable y hilo??

  • Ambos están usando para crear un hilo en Java.

¿Cuál es la diferencia entre runnable y hilo??

Hilo runnable vs

Runnable es una interfaz en Java para crear un hilo que permite que muchos subprocesos compartan el mismo objeto de hilo. El hilo es una clase en Java para crear un hilo donde cada hilo tiene un objeto único asociado con él.
 Memoria
En runnable, múltiples hilos comparten el mismo objeto, por lo que requieren menos memoria. En la clase de hilo, cada hilo crea un objeto único, por lo tanto, requiere más memoria.
Capacidad de extensión
Después de implementar la interfaz runnable, puede extender una clase. Múltiples herencias no son compatibles en Java. Después de extender la clase de hilo, no puede extender ninguna otra clase.
 Mantenibilidad del código
La interfaz ejecutable hace que el código sea más mantenible. En la clase de hilos, el mantenimiento lleva mucho tiempo.

Resumen -Runnable VS hilo 

Un proceso se divide en múltiples subprocesos para realizar múltiples tareas al mismo tiempo. Estos subprocesos se conocen como hilos. La instancia de un hilo se puede realizar implementando la interfaz ejecutable o extendiendo la clase de subprocesos. Es fácil extender la clase de hilo, pero no es una mejor práctica de programación orientada a objetos. Al implementar Runnable, muchos subprocesos pueden compartir el mismo objeto de subproceso, mientras que en extender la clase de subproceso, cada subproceso tiene un objeto único asociado con él. Esa es la diferencia entre runnable y hilo. En la clase de hilo, la creación de objetos múltiples puede consumir más memoria.

Descargue el PDF de Runnable vs Thread

Puede descargar la versión PDF de este artículo y usarla para fines fuera de línea según la nota de cita. Descargue la versión PDF aquí Diferencia entre runnable y hilo

Referencia:

1.punto de tutorial.comunicarse. "Java multithreading."El punto, disponible aquí 
2.Pramodbablad. "Extiende el hilo vs implementos ejecutables en java."Concepto de Java del día, 11 de noviembre. 2016. Disponible aquí
3.Formas de crear un hilo en Java multithreading | Tutorial de Java Core | StudyTonight. Disponible aquí