ใน Java 19 นั้น มีความสามารถที่น่าสนใจคือ JEP 425 : Virtual Threads
ซึ่งอยู่ใน Project Loom นั่นเอง
โดยยังเป็น feature preview อยู่

เป้าหมายของ Virtual Threads

  • ทำการ scale การทำงานของ thread ให้ทำงานร่วมกับ hardware ได้ดีขึ้น ลดการใช้ memory ลงไป
  • สามารถปรับการใช้งาน Thread API ได้ง่าย
  • ให้ง่ายต่อการแก้ไขปัญหา การ debug และ profiling ด้วย JDK tools

มาลองเขียน code เล่น ๆ กันหน่อย

โดยทำการสร้าง 10 ล้าน thread มาเล่นหน่อย

จากนั้นลอง run ด้วย Java 19
พบว่าทำงานได้ปกติ ไม่เกิด out of memory ใด ๆ
และเร็วอีกด้วย !!
น่าสนใจมาก ๆ สำหรับ feature นี้