17 puntos por xguru 2025-02-15 | 2 comentarios | Compartir por WhatsApp
  • Resumen de Virtual Threads
    • Qué son Virtual Threads (proyecto Loom)
    • Platform Threads vs Virtual Threads - ¿Blocking?
    • Cómo funcionan Platform Threads
    • Cómo funcionan Virtual Threads
  • Reglas y mejores prácticas
    • Regla 1 - Crear Threads
    • Regla 2 - No usar CompletableFuture
    • Regla 2 - Sí usar Virtual Threads
    • Regla 3 - No usar Thread Pool
    • Regla 3 - Sí usar newThreadPerTaskExecutor
    • Regla 4 - No usar FixedThreadPool para concurrencia
    • Regla 4 - Sí usar Semaphore para concurrencia
    • Regla 5 - Sí usar ScopedValue
    • Regla 6 - Sí usar ReentranceLock en lugar de synchronized
    • Regla 7 - Usar Structured Concurrency
    • Regla 8 - Probar Virtual Threads
  • Spring Boot con Virtual Threads
    • Spring Boot MVC con Virtual Threads
    • Tareas asíncronas de Spring Boot MVC
    • RestController usa Virtual Threads
  • Cambios en código legado
    • Aplicar Virtual Threads a sistemas existentes

2 comentarios

 
click 2025-02-15

En JDK 24 se corrigió para que synchronized ya no provoque pinning, así que probablemente la regla 6 tampoco será necesaria para el próximo LTS.

 
carnoxen 2025-02-15

Scoped Value y Structured Concurrency todavía están en etapa de "vista previa", así que parece que pasará bastante tiempo antes de que los Virtual Threads se adopten en producción.