Dos hilos en java

Salida: el método main y el método run se ejecutan en el mismo hilo principal de forma secuencial. Como el método run se llama antes que el método main para el bucle, el método run para la salida del bucle se imprime primero y luego se imprime el método main para la salida del bucle.

Aquí, estamos llamando a ambos métodos run y start. La lógica del método run se ejecuta dos veces. Se ejecuta en el hilo principal ya que se llama directamente desde el método principal; también se ejecuta en el hilo aduanero debido a la llamada al método start.

Resultado: primero el método de ejecución en el hilo principal completa su ejecución, luego debido a la llamada al método de inicio se crea el hilo definido por el usuario y el método de ejecución también. Ahora el método run en el hilo definido por el usuario y el método principal para el bucle en el hilo principal se ejecutan concurrentemente.

Aquí, llamamos a start() antes del método run(). La lógica del método run se ejecuta de forma concurrente, una es desde el hilo 0 y otra es desde el hilo principal. Después de completar la ejecución del método run en el hilo principal se inicia el método principal para el bucle.

Ejemplo de multihilo en Java

Tema: una empresa organiza una reunión anual. Hay dos entradas cuando la conferencia entra. Cada empleado puede obtener un boleto de lotería de doble cromosfera al entrar, suponiendo que la empresa tiene 100 empleados, utilizando multithreading para simular el proceso de admisión de la reunión anual.

leer  Ejercicios java swing

Análisis: dos entradas corresponden a dos hilos. El método de obtención del billete de lotería se superpone a la implementación de ejecución de la interfaz Runnable. Llamo a esta clase de interfaces Runnable la clase Paper, que utiliza el campo id para registrar los números de los empleados, y proporciona métodos get y set. Los terceros hilos se establecen para controlar el acceso de 100 empleados de forma aleatoria, ya que son los empleados los que entran en la entrada y la entrada es el método de lotería correspondiente. Así que he utilizado el mecanismo de despertar. )

Ejercicios de multihilo

Esta página contiene varios ejercicios para practicar la programación concurrente, conocer Java y Erlang, y prepararse para las tareas. También proporcionamos algunos ejercicios utilizando el lenguaje Promela y la herramienta relacionada Spin, que puede utilizarse para simular y verificar formalmente que ciertas propiedades relacionadas con la concurrencia son satisfechas por los modelos de sus programas. Ninguno de los ejercicios es obligatorio.

Así, mientras un hilo está a punto de escribir el nuevo valor en la variable de contador compartida, el otro podría actualizarlo varias veces (o incluso muchas veces) mientras tanto. El estándar de Java no garantiza que los hilos se ejecuten de forma sincronizada de ninguna manera. Y de hecho a menudo están completamente desincronizados y se ejecutan en un orden muy sorprendente. Cuando un orden particular de ejecución de código en diferentes hilos hace que el programa cometa un error, lo llamamos una condición de carrera. En este caso se trata de una condición de carrera entre dos hilos que leen y actualizan el mismo contador.

leer  Ejercicios avanzados java resueltos

¿Cómo solucionar este problema? Una forma posible es restringir la forma en que se pueden ordenar las operaciones de los dos hilos. En particular, no queremos que un hilo lea y modifique el contador cuando el otro lo ha leído pero aún no lo ha actualizado.

Rutina de hilos java

Programa Java y Ejemplos de Código sobre Multithreading Esta sección contiene Programas Java y Ejemplos de Código con soluciones, resultados y explicaciones basadas en Multithreading. Encuentre en estas preguntas programas para utilizar múltiples hilos, hilos sincronizados, establecer prioridades, detener la ejecución de hilos, etc. Esta colección de ejemplos básicos y difíciles resueltos sobre la programación en Java será muy útil para los principiantes.Lista de Programas Java y Ejemplos de Código sobre Multithreading cubiertos aquíLos programas Java cubiertos en esta sección van desde lo básico hasta lo avanzado y difícil. Cubren:

8. Todos los estudiantes de primer año de informática de BCA, BSc, BE, BTech, MCA y estudiantes de ingeniería encontrarán estas preguntas resueltas de programas Java útiles para su examen universitario, examen de laboratorio, prácticas, tareas, preguntas de viva y colocación en el campus. También puede utilizar estos programas para practicar para su examen escrito.

Por avivcas