CodeGym
AI Academy
Promoción
CodeGym University
Aprendizaje
Cursos
Tareas
Encuestas & Cuestionarios
Juegos
Ayuda
Horario
Comunidad
Usuarios
Foro
Chat
Artículos
Historias de éxito
Actividad
Reseñas
Suscripciones
Tema claro

Lecciones

  • Reseñas
  • Sobre nosotros
Comenzar
Comenzar a aprender
Comienza a aprender ahora
  • Mi progreso
  • Cursos
  • Universidad
  • Mapa de misiones
  • Lecciones
  • Introducción al multihilo: para qué sirve

    JAVA 25 SELF
    Nivel 51,Lección 0
    Por qué las aplicaciones necesitan hilos y paralelismo: desde una interfaz receptiva hasta aprovechar todos los núcleos de la CPU. Analizamos la diferencia entre procesos e hilos, el papel del hilo principal main en la JVM, casos prácticos (UI, servidores, procesamiento de archivos) y riesgos: race condition, deadlock, así como herramientas básicas de sincronización como synchronized. Mostraremos un ejemplo sencillo con Thread y la ejecución de dos tareas en paralelo.
    Disponible
  • Lanzamiento de hilos: Thread y Runnable, sintaxis

    JAVA 25 SELF
    Nivel 51,Lección 1
    En la lección analizamos el lanzamiento de hilos en Java: conocemos la clase Thread y la interfaz Runnable, aprendemos a invocar correctamente start() y no confundirlo con run(), usamos clases anónimas y expresiones lambda, lanzamos varios hilos y observamos el ciclo de vida ( NEW → RUNNABLE → TERMINATED). Hablaremos de los métodos Thread.currentThread(), getName(), de la espera mediante join() y de errores típicos como IllegalThreadStateException.
    Disponible
  • Estados y ciclo de vida de un hilo

    JAVA 25 SELF
    Nivel 51,Lección 2
    Analizamos el ciclo de vida de un hilo en Java: desde Thread.State (
    NEW
    ,
    RUNNABLE
    ,
    BLOCKED
    ,
    WAITING
    ,
    TIMED_WAITING
    ,
    TERMINATED
    ) hasta las transiciones entre ellos. Aprendemos a gestionar hilos con Thread.sleep(...), join(), interrupt(), a diagnosticar el estado mediante isAlive() y getState(), así como a evitar métodos obsoletos como stop()/ suspend()/ resume(). Al final — consejos prácticos y errores frecuentes.
    Disponible
  • Parámetros y prioridades de los hilos

    JAVA 25 SELF
    Nivel 51,Lección 3
    Cómo pasar parámetros de forma segura a los hilos a través del constructor de la clase que implementa Runnable, cuándo son apropiadas las expresiones lambda y por qué es mejor hacer los campos final. Analizamos las prioridades de los hilos: métodos setPriority/ getPriority, constantes Thread.MIN_PRIORITY, Thread.NORM_PRIORITY, Thread.MAX_PRIORITY y su influencia en el planificador. Además — nombrar hilos mediante el constructor, setName/ getName, ejemplo práctico y errores típicos (Runnable compartido, setters, esperanzas en las prioridades).
    Disponible
  • Condición de carrera (race condition)

    JAVA 25 SELF
    Nivel 51,Lección 4
    En la lección analizamos qué es una condición de carrera: cuando varios hilos acceden simultáneamente a datos compartidos y el resultado depende del orden de planificación. Con el ejemplo del incremento counter ++ mostramos por qué la operación no es atómica y cómo se pierden incrementos. Abordamos un caso práctico con una cuenta bancaria, las consecuencias en producción y los enfoques de protección: synchronized, tipos atómicos de java.util.concurrent.atomic (por ejemplo, AtomicInteger) y también la inmutabilidad. Cerramos con la sección «Errores típicos», donde se explica por qué los bugs de Thread rara vez los detectan las pruebas y por qué «curarlos» con Thread. sleep( 1) no tiene sentido.
    Disponible
Aprender
  • Registro
  • Curso de Java
  • Ayuda con tareas
  • Precios
  • Sintaxis de Java
Comunidad
  • Usuarios
  • Artículos
  • Foro
  • Chat
  • Historias de éxito
  • Actividad
  • Programa de afiliados
Empresa
  • Acerca de nosotros
  • Contactos
  • Reseñas
  • Sala de prensa
  • CodeGym para EDU
  • Preguntas frecuentes
  • Soporte
CodeGymCodeGym es un curso en línea para aprender programación Java desde cero. Este curso es una forma perfecta de dominar Java para principiantes. Contiene más de 1.200 tareas con verificación instantánea y un conjunto esencial de teoría sobre los fundamentos de Java. Para ayudarte a tener éxito en la formación, hemos implementado una serie de funciones motivacionales: cuestionarios, proyectos de programación, contenido sobre aprendizaje eficiente y contenidos sobre la carrera profesional de un desarrollador Java.
Síguenos
Idioma de la interfaz
English Deutsch
Español
हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"Los programadores se hacen, no nacen" © 2026 CodeGym
MastercardVisa
"Los programadores se hacen, no nacen" © 2026 CodeGym