jmh Archive

[Java] การใช้งาน Sequential และ Parallel Stream

ใน Java 8 ขึ้นมานั้น (นานแล้ว)มี Stream API เพิ่มเข้ามา ทำให้ง่ายต่อการเข้าถึงข้อมูลในรูปแบบของ collectionโดยไม่ทำการแก้ไขข้อมูลต้นทางหรือต้นฉบับสามารถทำซ้ำแล้วซ้ำเล่า จะได้ผลเช่นเดิม ใน operation เดิมเสมอซึ่งการใช้งานสามารถสร้าง stream ในรูปแบบของ sequential หรือ parallel (ตาม core ของ CPU) ก็ได้

Read More…

มาทำ benchmark ของภาษาโปรแกรมบน JVM ด้วย JMH (Java Microbenchmark Harness)

มีคำถามเกี่ยวกับการเขียนโปรแกรมด้วยภาษา Java ว่าการใช้ for-loop ปกติกับการใช้ Stream API นั้น อะไรที่มี performance ดีกว่ากัน ตอบได้เลยว่า for-loop เร็วสุด ๆ แต่อาจจะต้องมองมุมอื่นด้วย ทั้งเรื่องของ readable, safety, maintain รวมไปถึงความต้องการของงานต่าง ๆ

Read More…