Métodos para Crear Hilos en Java
Formas de Instanciar Procesos Concurrentes
============
Extendiendo la clase Thread y modificando el método ejecutar()
Implementando la interfaz Runnable
Implementando la interfaz Callible
Clases anónimas y expresiones lambda
Grupos de hilos
Métodos asíncronos en Spring
Temporizador (java.util.Timer)
A continuación se detal ...
Publicado el 6-11 03:44
Concurrencia en Python y Automatización Remota con Paramiko
Fundamentos de la Concurrencia y los Sistemas Operativos
Un proceso es la abstracción fundamental de un programa en ejecución. Este concepto, originado en la teoría de los sistemas operativos, representa el núcleo sobre el cual se construye la gestión de recursos y la ejecución de tareas. Incluso en arquitecturas de hardware con un solo núcleo, ...
Publicado el 6-10 23:38
Patrón de Doble Verificación (DCL) y su Solución
El patrón de Doble Verificación Bloqueada (o DCL por sus siglas en inglés) es una implementación errónea que intenta optimizar la inicialización perezosa de instancias únicas (singletons) para evitar la sobrecarga de sincronización en cada acceso. Una implementación correcta, aunque sincrónica, sería:
public class FabricaCorrecta {
private s ...
Publicado el 6-9 05:08
Bloqueo exclusivo en el framework concurrente AQS de Java
Introducción al bloqueo exclusivo en AQS
El framwork AQS (AbstractQueuedSynchronizer) de Java proporciona un mecanismo para construir sincronizadores concurrentes. En esta sección, exploramos el bloqueo exclusivo, que permite que solo un hilo acceda a un recurso compartido en un momento dado, similar a un puente estrecho que soporta solo un pea ...
Publicado el 6-9 04:57
Programación Multihilo en Java
Introducción a los Hilos:
Un hilo es una vía de ejecución independiente
Los programas en ejecución tienen muchos procesos en segundo plano como el hilo principal, young.gc, full.gc()
main es el hilo principal, punto de entrada del sistema, utilizado para ejecutar todo el programa
En un proceso, si se abren múltiples hilos, la ejecución de los ...
Publicado el 6-7 02:33
Programación de Redes con Sockets
I. Arquitectura Cliente/Servidor
II. Modelo OSI de siete capas
III. Capa de Sockets
IV. ¿Qué es un Socket?
V. Historia y clasificación de los sockets
VI. Flujo de trabajo de los sockets
VII. Sockets basados en TCP
VIII. Sockets basados en UDP
IX. Fenómeno de paquetes pegados
X. ¿Qué es el fenómeno de paquetes pegados?
XI. Soluciones básicas pa ...
Publicado el 6-5 01:33
Análisis profundo de la sintaxis del lenguaje Cangjie: del léxico a la semántica
Filosofía de diseño y posición central de Cangjie
El lenguaje Cangjie, como nuevo paradigma en desarrollo de software, tiene como misión equilibrar rendimiento excepcional, seguridad en memoria y concurrencia, junto con alta eficiencia en desarrollo. Su diseño se enfoca en abordar desafíos modernos como la gestión de recursos, la paralelización ...
Publicado el 6-4 18:18
Demostración de visibilidad, atomicidad y orden en Java mediante volatile y synchronized
Introducción
Este artículo explora los conceptos de visibilidad, atomicidad y orden en Java mediante ejemplos de código que utilizan las palabras clave volatile y synchronized. Analizaremos cómo estos modificadores afectan el comportamiento de los hilos en un entorno concurrente.
Visibilidad
1.1 Prueba de falta de visibilidad
La falta de vis ...
Publicado el 6-2 03:38
Corrutinas en Kotlin: Conceptos Esenciales y Uso Concurrente
Conocimientos Previos sobre Corrutinas
Procesos e Hilos
Definiciones Básicas
Proceso: Una unidad independiente de ejecución que el sistema operativo gestiona para la asignación de recursos. Representa la entidad mínima de asignación de recursos en un entorno de CPU de núcleo único, donde solo un programa se ejecuta a la vez en memoria.
Hilo: La ...
Publicado el 5-31 22:50
Comparación entre el framework de sincronización de Java y los canales de Go
Este artículo explora las diferencias fundamentales entre el mecanismo de sincronización basado en colas de Java y los canales de comunicación de Go, dos enfoques distintos para resolver problemas de concurrencia.
Distinción conceptual esencial
En Java, el AbstractQueuedSynchronizer (AQS) es una infraestructura que permite construir primitivas ...
Publicado el 5-30 11:06