JEP 543 đưa Structured Concurrency vào JDK 28: khép lại 7 vòng xem trước
JEP 543 chính thức hoàn thiện tính năng Structured Concurrency trong JDK 28 mà không thay đổi API so với JDK 27. Các nhóm đang dùng JDK 27 chỉ cần bỏ cờ --enable-preview và biên dịch lại, trong khi mã viết cho JDK 25 hoặc 26 phải điều chỉnh theo tham số kiểu ngoại lệ R_X, cơ chế bọc ExecutionException và phương thức trừu tượng timeout() của joiner.
JEP 543 đưa Structured Concurrency vào JDK 28: khép lại 7 vòng xem trước
Sau bảy vòng thử nghiệm, Structured Concurrency (lập trình đồng thời có cấu trúc) đã chính thức trở thành tính năng ổn định trong Java thông qua JEP 543. Điểm đáng chú ý là JDK 28 giữ nguyên API so với JDK 27, giúp việc nâng cấp trở nên nhẹ nhàng hơn cho phần lớn lập trình viên.
Tuy nhiên, những dự án còn mắc kẹt ở mã viết cho JDK 25 hoặc JDK 26 sẽ cần điều chỉnh một số chi tiết quan trọng về kiểu ngoại lệ và cơ chế xử lý lỗi.
Structured Concurrency là gì và vì sao quan trọng?
Structured Concurrency là mô hình lập trình giúp các tác vụ con (subtask) chạy song song trong một khối mã có phạm vi rõ ràng. Khi khối cha kết thúc, toàn bộ tác vụ con cũng phải kết thúc theo — không còn cảnh luồng chạy nền "mồ côi" gây rò rỉ tài nguyên hay lỗi khó tái hiện.
Mô hình này đặc biệt hữu ích với các ứng dụng máy chủ Java xử lý nhiều yêu cầu đồng thời, vốn là thế mạnh truyền thống của nền tảng Java trong các hệ thống backend, microservices và dịch vụ đám mây.
Nâng cấp từ JDK 27: gần như không cần sửa mã
Theo JEP 543, các nhóm đang phát triển trên JDK 27 chỉ cần làm hai việc:
- Bỏ cờ
--enable-previewkhi biên dịch và chạy - Biên dịch lại mã nguồn
Bởi API không thay đổi giữa hai phiên bản, mã đã chạy ổn trên JDK 27 có thể chuyển sang JDK 28 mà gần như không phải động vào logic.
Nâng cấp từ JDK 25 hoặc 26: ba điểm cần lưu ý
Với mã viết cho JDK 25 hoặc JDK 26, quá trình chuyển đổi sẽ đòi hỏi nhiều công sức hơn. Cụ thể có ba thay đổi cần xử lý:
- Tham số kiểu ngoại lệ
R_X: khai báo kiểu ngoại lệ trong các cấu trúc liên quan cần được cập nhật theo thiết kế mới. - Cơ chế bọc
ExecutionException: cách ngoại lệ của tác vụ con được bọc lại đã thay đổi, ảnh hưởng trực tiếp đến mã xử lý lỗi. - Phương thức trừu tượng
timeout()của joiner: callback này nay là phương thức trừu tượng, buộc các lớp triển khai tùy chỉnh phải hiện thực hóa nó.
Với các đội ngũ đã theo dõi Structured Concurrency qua nhiều vòng preview, việc rà soát lại phần xử lý ngoại lệ là bước quan trọng nhất trước khi chuyển hẳn sang JDK 28.
Ý nghĩa với cộng đồng Java tại Việt Nam
Việc một tính năng trải qua tới bảy vòng xem trước cho thấy mức độ thận trọng của nhóm phát triển JDK với những thay đổi ảnh hưởng đến mô hình lập trình cốt lõi. Khi Structured Concurrency đã ổn định, các doanh nghiệp Việt Nam đang vận hành hệ thống Java trên quy mô lớn có thêm lý do để lên kế hoạch nâng cấp, bởi đây là nền tảng để viết mã song song an toàn hơn, dễ bảo trì hơn và giảm thiểu lỗi rò rỉ luồng.
Với các nhóm chưa vội nâng cấp, JDK 27 vẫn là môi trường ổn định để thử nghiệm trước khi chuyển sang bản chính thức.
Bài viết liên quan

Công nghệ
Mô hình AI hàng đầu giỏi Vật lý đến đâu? Nghiên cứu mới chỉ ra các bài kiểm tra hiện hành đang đánh giá sai
16 tháng 9, 2026

Công nghệ
Nộp đơn xin việc lẽ ra nên khó hơn. Thật đấy
25 tháng 8, 2026

Công nghệ
GitHub lại gặp sự cố: GitHub Actions, Pages và Webhooks bị suy giảm khả năng truy cập
19 tháng 10, 2026