Java Academy · บทเรียน

ตัวจัดการงานและผลลัพธ์ในอนาคต

เรียนรู้การจัดการเธรดด้วย Executors และการจัดการผลลัพธ์ด้วย Futures

บทเรียน 1 จาก 28 ขั้นตอน

ตัวจัดการงานและผลลัพธ์ในอนาคต เป็นบทเรียน Java Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 2 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Java Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Java Academy มีบทเรียนทั้งหมด 2 บทเรียน

บทนำ

ตัวจัดการการทำงาน ช่วยให้การจัดการเธรดง่ายขึ้น ส่วน ผลลัพธ์ล่วงหน้า ช่วยให้คุณรับผลลัพธ์จากงานที่ทำงานแบบอะซิงโครนัส

ExecutorService

ExecutorService จัดการกลุ่มเธรด ทำให้คุณไม่ต้องสร้างเธรดเองทุกครั้ง

โค้ด: ส่งงานรันเนเบิล

โค้ดนี้ส่งงานรันเนเบิลไปยัง ExecutorService ที่มีเธรดสองตัว

import java.util.concurrent.*;public class Main {
  public static void main(String[] args) {
    ExecutorService executor = Executors.newFixedThreadPool(2);
    executor.submit(() -> System.out.println("Task executed"));
    executor.shutdown();
  }
}

ผลลัพธ์ล่วงหน้า

ผลลัพธ์ล่วงหน้า<T> แทนผลลัพธ์ของงานแบบอะซิงโครนัส คุณสามารถเรียกใช้ get() เพื่อรอผลลัพธ์ได้

โค้ด: งานแบบเรียกใช้ได้ + ผลลัพธ์ล่วงหน้า

โค้ดนี้ส่งงานแบบเรียกใช้ได้ซึ่งส่งคืนค่าจำนวนเต็ม get() จะบล็อกจนกว่าผลลัพธ์จะพร้อม

import java.util.concurrent.*;public class Main {
  public static void main(String[] args) throws Exception {
    ExecutorService executor = Executors.newSingleThreadExecutor();
    Future<Integer> f = executor.submit(() -> 2 + 3);
    System.out.println("Result: " + f.get());
    executor.shutdown();
  }
}

ระยะหมดเวลา + ปิดการทำงาน

คุณสามารถกำหนด get(timeout) เพื่อหลีกเลี่ยงการรอตลอดไป ควรเรียกใช้ shutdown() กับ ExecutorService เสมอ

ตรวจสอบผลลัพธ์ล่วงหน้า

ตรวจสอบอย่างรวดเร็ว: ผลลัพธ์ล่วงหน้าแทนสิ่งใดใน Java

สรุป

สรุป: ตัวจัดการการทำงานจัดการเธรด ผลลัพธ์ล่วงหน้าแทนผลลัพธ์ ใช้ submit() สำหรับงาน get() สำหรับผลลัพธ์ และ shutdown() เมื่อทำงานเสร็จ

เริ่มต้นได้ฟรี

เรียนรู้ Java ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
104
บทเรียน
374

คำถามที่พบบ่อย

บทเรียน “ตัวจัดการงานและผลลัพธ์ในอนาคต” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ตัวจัดการงานและผลลัพธ์ในอนาคต” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Java Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Java Academy มีบทเรียนทั้งหมด 2 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ตัวจัดการงานและผลลัพธ์ในอนาคต”

เรียนรู้การจัดการเธรดด้วย Executors และการจัดการผลลัพธ์ด้วย Futures คุณปฏิบัติ Java Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Java Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Java Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 2 บทเรียน

บทเรียน “ตัวจัดการงานและผลลัพธ์ในอนาคต” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Java Academy นี้ได้ไหม

ได้ บทเรียน Java Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ตัวจัดการงานและผลลัพธ์ในอนาคต
  2. งานและวงจรชีวิต
← กลับไปที่ Java Academy