Trung BìnhJava iconJava

Virtual Threads là gì và chúng giải quyết vấn đề gì của Java?

Virtual Threads (Project Loom, Java 21) là các luồng nhẹ do JVM quản lý, cho phép chạy hàng triệu luồng đồng thời trên chỉ vài OS thread. Khác với Platform Thread (1:1 với OS thread), Virtual Thread dùng lịch trình M:N — nhiều virtual thread trên ít OS thread.

Lợi ích: viết code đồng bộ đơn giản nhưng đạt được concurrency cao (xử lý 10K+ request) mà không cần async/reactive phức tạp. Cách dùng: Thread.ofVirtual().start(() -> doWork()) hoặc Executors.newVirtualThreadPerTaskExecutor(). Lý tưởng cho: web server, microservices, I/O-bound workloads. Quan trọng: không thích hợp cho CPU-bound tasks (không giúp gì nếu bottleneck là tính toán, không phải I/O).

Xem toàn bộ Java cùng filter theo level & chủ đề con.

Mở danh sách Java