Tag: completablefuture

8 รายการ

Blog

นากต้นฉบับตั้งประตูจับเวลาก่อนปล่อยกล่องงานลงสายพาน
javacompletablefutureconcurrency

Java delayedExecutor: หน่วงการส่งงานโดยไม่สร้าง scheduler ใหม่ทุกจุด

ใช้ CompletableFuture.delayedExecutor ประกอบ async pipeline พร้อมแยก delay ออกจาก timeout และทดสอบบน Java 17

น้องกาย
นากมิ้นต์ต้นฉบับวางนาฬิกาทรายสีอำพันข้างกล่องงาน ถ้าหมดเวลาจะสลับใส่กล่องสำรองแทน
javaconcurrencycompletablefuture

Java completeOnTimeout: ใส่ค่าสำรองเมื่องานช้าเกินเวลา

ใช้ CompletableFuture.completeOnTimeout กันอนาคตค้าง พร้อมทดสอบว่าค่าสำรองเข้าเมื่อหมดเวลาและค่าจริงชนะถ้าเสร็จก่อน

น้องกาย
นาฬิกาจับเวลาคู่กับกล่อง future บนโต๊ะมิ้นต์
javaconcurrencycompletablefuture

Java CompletableFuture.orTimeout: ตั้งเวลาตายให้งานอะซิงก์

ใช้ orTimeout (Java 9+) ให้ Future ล้มด้วย TimeoutException เมื่อช้าเกิน — ตัวอย่างรันจริง

น้องกาย
นากกายต่อท่อ async สองท่อนให้เป็นเส้นเดียวบนโต๊ะมิ้นต์
javacompletablefutureasync

Java thenCompose: ต่อ Future แบบแบน ไม่ซ้อน CompletionStage

ใช้ CompletableFuture.thenCompose เมื่อขั้นตอนถัดไปคืน Future อีกชั้น พร้อมเทียบ thenApply ที่ซ้อน

น้องกาย
นากกายต้นฉบับรับรางสีเขียวและรางสีแดงมารวมเป็นซองผลลัพธ์ชนิดเดียวที่จุด boundary
javacompletablefutureasync

Java CompletableFuture.handle: รวมทางสำเร็จและล้มเหลวไว้ที่ boundary เดียว

ใช้ handle แปลงผล async เป็น outcome แบบชัดเจน พร้อมแยกจาก exceptionally และ whenComplete

พี่โชว์
นากกายต้นฉบับกำลังย้ายลูกแก้วจากรางที่ขาดไปยังรางสำรองสีเขียวซึ่งกลับมารวมเส้นเดิม
javacompletablefutureconcurrency

Java exceptionallyCompose: fallback แบบ async โดยไม่ซ้อน CompletableFuture

กู้ future ที่ล้มด้วยงาน async อีกชุด พร้อมแยก recovery จากการแปลงผลปกติและทดสอบบน Java 17

พี่โชว์
นากกายตั้งนาฬิกาจับเวลาข้างกล่องงานบนโต๊ะมิ้นต์
javaconcurrencycompletablefuture

Java CompletableFuture.orTimeout: ตัดงานช้าด้วยหมดเวลาในตัว

สอนใช้ CompletableFuture.orTimeout เพื่อล้มอนาคตที่ค้างเกินกำหนด พร้อม java-test ที่รันบน JDK ของเครื่อง

น้องกาย
นากต้นฉบับรอไฟสถานะสามดวงติดครบก่อนรวบตะกร้าผลลัพธ์ตามลำดับ
javaconcurrencycompletablefuture

Java CompletableFuture.allOf: รอครบได้ แต่ผลลัพธ์ต้องประกอบเอง

รวมงาน async หลายชิ้นด้วย allOf โดยรักษาลำดับผลลัพธ์และทำให้ failure path ชัด พร้อมตัวอย่าง Java 17 ที่รันจริง

พี่โชว์