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 a CompletableFuture

    JAVA 25 SELF
    Nivel 55,Lección 0
    En esta lección veremos por qué el código síncrono conduce a bloqueos, qué limitaciones tenía Future (como el get() bloqueante) y cómo la clase CompletableFuture del paquete java.util.concurrent cambia el estilo de trabajo con la asincronía. Practicaremos lanzar tareas en segundo plano con supplyAsync, suscribirnos al resultado con thenAccept/ thenApply, hablaremos del papel de ForkJoinPool y de los errores típicos: usar get()/ join() en el hilo principal, olvidar el manejo de errores con exceptionally/ handle, etc.
    Disponible
  • Tareas asíncronas: thenApply, thenAccept, thenRun

    JAVA 25 SELF
    Nivel 55,Lección 1
    Analizamos el arranque y la composición de cálculos asíncronos con CompletableFuture: cómo iniciar tareas mediante supplyAsync y runAsync, en qué se diferencian los manejadores thenApply, thenAccept, thenRun, y cuándo elegir sus variantes asíncronas thenApplyAsync/ thenAcceptAsync/ thenRunAsync. Hablaremos de los hilos de ejecución ( ForkJoinPool o tu Executor), de los tipos de resultados ( CompletableFuture<T>, CompletableFuture<Void>) y de errores típicos: llamadas bloqueantes get()/ join(), errores no gestionados sin exceptionally/ handle/ whenComplete, así como el intento de usar el resultado dentro de thenRun.
    Disponible
  • Combinación de CompletableFuture: thenCombine, allOf, anyOf

    JAVA 25 SELF
    Nivel 55,Lección 2
    Cómo paralelizar tareas y combinar resultados con CompletableFuture: combinar dos resultados con thenCombine/ thenCombineAsync, esperar a un conjunto de tareas con allOf, reaccionar a la respuesta más rápida con anyOf. Veremos las firmas, ejemplos prácticos con supplyAsync, el procesamiento no bloqueante ( thenAccept, thenRun), así como los matices de los errores y su manejo ( exceptionally, handle, whenComplete). Al final — una tabla compacta de comparación de métodos.
    Disponible
  • Manejo de errores en código asíncrono: exceptionally, handle

    JAVA 25 SELF
    Nivel 55,Lección 3
    Cómo capturar y manejar excepciones de forma segura en cadenas CompletableFuture: analizamos los roles de exceptionally (valor de reserva en caso de error), handle (manejador universal de éxito/error) y whenComplete (acciones colaterales sin cambiar el resultado). Comentaremos por qué la invocación directa de get()/ join() envuelve las causas en ExecutionException/ CompletionException, cómo combinar etapas ( thenApply, thenAccept) y qué errores típicos evitar.
    Disponible
  • thenCompose + Executor personalizado + tiempos de espera

    JAVA 25 SELF
    Nivel 55,Lección 4
    Cómo «encadenar» correctamente los pasos asíncronos en CompletableFuture con thenCompose y cuándo basta con thenApply; cómo y por qué conectar un pool de hilos propio mediante ExecutorService (en lugar de ForkJoinPool.commonPool()); cómo proteger las cadenas de un «esperar para siempre» con orTimeout y completeOnTimeout. Al final — un ejemplo práctico con un Executor personalizado, thenCompose y tiempo de espera, así como errores típicos y sus soluciones.
    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