Imprima números pares e impares en orden creciente usando dos hilos en Java

Requisito previo: subprocesamiento múltiple Dado un número entero N, la tarea es escribir un programa Java para imprimir los primeros N números naturales en orden creciente usando dos hilos . Ejemplos: Entrada: N = 10 Salida: 1 2 3 4 5 6 7 8 9 10 Entrada: N = 18 Salida: 1 2 3 4 … Continue reading «Imprima números pares e impares en orden creciente usando dos hilos en Java»

Clase Java.lang.ThreadGroup en Java

ThreadGroup crea un grupo de hilos. Ofrece una manera conveniente de administrar grupos de subprocesos como una unidad. Esto es particularmente valioso en situaciones en las que desea suspender y reanudar varios hilos relacionados. El grupo de subprocesos forma un árbol en el que cada grupo de subprocesos, excepto el grupo de subprocesos inicial, tiene … Continue reading «Clase Java.lang.ThreadGroup en Java»

Comunicación entre subprocesos en Java

Requisito previo: subprocesamiento múltiple en Java , sincronizado en Java  La comunicación entre subprocesos en Java es un mecanismo en el que se detiene la ejecución de un subproceso en su sección crítica y se permite que otro subproceso ingrese (o bloquee) en la misma sección crítica para ejecutarse. Java // Java program to demonstrate … Continue reading «Comunicación entre subprocesos en Java»

¿Cómo detener temporalmente un hilo en Java?

El método suspend() de la clase de subprocesos hace que el subproceso pase del estado de ejecución al estado de espera. Este método se emplea si desea evitar la ejecución del subproceso y comenzarlo de nuevo cuando ocurra un evento en particular. Este método permite que un hilo deje de ejecutarse temporalmente. El hilo suspendido … Continue reading «¿Cómo detener temporalmente un hilo en Java?»

Sobrecarga del método run() de la clase Thread

Es posible la sobrecarga del método run(). Pero el método de inicio() de la clase Thread puede invocar un método sin argumentos. El otro método sobrecargado que tenemos que llamar explícitamente como una llamada de método normal. // Java Program to illustrate the behavior of // run() method overloading class Geeks extends Thread {     public … Continue reading «Sobrecarga del método run() de la clase Thread»

Subprocesos de Java

Por lo general, podemos definir subprocesos como un subproceso con peso ligero con la unidad de procesos más pequeña y también tiene rutas de ejecución separadas. Estos subprocesos usan memoria compartida pero actúan de forma independiente, por lo tanto, si hay una excepción en los subprocesos que no afectan el funcionamiento de otros subprocesos a … Continue reading «Subprocesos de Java»

Subproceso UncaughtExceptionHandler en Java con ejemplos

Una excepción es un evento no deseado o inesperado que ocurre durante la ejecución de un programa, es decir, en tiempo de ejecución, que interrumpe el flujo normal de las instrucciones del programa. En este artículo, entenderemos cómo implementar Thread.UncaughtExceptionHandler . Antes de implementar el controlador, comprendamos cómo las excepciones son causadas por un ejemplo … Continue reading «Subproceso UncaughtExceptionHandler en Java con ejemplos»

Solución productor-consumidor utilizando semáforos en Java | conjunto 2

Requisitos previos: semáforo en Java , comunicación entre procesos , problema del consumidor productor con semáforos | Serie 1 En informática, el problema del productor-consumidor (también conocido como problema del búfer acotado) es un ejemplo clásico de un problema de sincronización de procesos múltiples. El problema describe dos procesos, el productor y el consumidor, que … Continue reading «Solución productor-consumidor utilizando semáforos en Java | conjunto 2»

Sincronización en Java

Los programas de subprocesos múltiples a menudo pueden llegar a una situación en la que varios subprocesos intentan acceder a los mismos recursos y finalmente producen resultados erróneos e imprevistos.  Por lo tanto, debe asegurarse mediante algún método de sincronización que solo un subproceso pueda acceder al recurso en un momento dado. Java proporciona una … Continue reading «Sincronización en Java»

Diferencia entre CountDownLatch y CyclicBarrier en Java

Aunque tanto CountDownLatch como CyclicBarrier se utilizan como una ayuda de sincronización que permite que al menos un subproceso espere, hay ciertas diferencias entre ellos. Conocer esos contrastes entre CountDownLatch y CyclicBarrier en Java lo ayudará a elegir cuándo una de estas utilidades le servirá mejor y, obviamente, también es una pregunta de consulta java … Continue reading «Diferencia entre CountDownLatch y CyclicBarrier en Java»