แบบฝึกหัด C#

รันงานพร้อมกันด้วย WhenAll

รันการทำงานแบบอะซิงโครนัสที่เป็นอิสระต่อกันพร้อมกัน

ทำงานอย่างไร

Task.WhenAll เสร็จเมื่องานทุกตัวที่ส่งเข้ามาเสร็จแล้ว

เริ่มทั้งสองงานก่อน await ทำให้ช่วงเวลารอของทั้งคู่ซ้อนกัน

ตัวอย่าง C# ที่รันได้

C#
รันโค้ด →
Program.cs
using System;
using System.Threading.Tasks;
class Program
{
    static async Task<int> Fetch(int value) { await Task.Delay(20); return value; }
    static async Task Main()
    {
        int[] results = await Task.WhenAll(Fetch(20), Fetch(22));
        Console.WriteLine(results[0] + results[1]);
    }
}
ผลลัพธ์ที่คาดหวัง
42

ฝึกกับดีบักเกอร์

ตั้ง breakpoint ที่การกำหนดค่าหรือเงื่อนไขสำคัญ กด Debug แล้วดูค่าตัวแปรภายในก่อนไปยังบรรทัดถัดไป

ฝึกด้วยโจทย์

ใช้สิ่งที่เรียนในบทนี้แก้ปัญหาจริง ทุกโจทย์รันในเบราว์เซอร์ พร้อมการทดสอบทันทีและรีวิวจาก AI

โจทย์ทั้งหมด