Concurrency และ Parallel คืออะไร

Pratya Khaday
Aug 15, 2021

--

Concurrency เป็นการจัดการงานหลายๆงาน(multi-task)ในเวลาเดียวกัน เช่น ผู้ปฏิบัติงาน(worker) 1 คน มีงานที่ต้องทำหลายงานในเวลาเดียวกัน ดังภาพด้านล่าง

ผู้ปฏิบัติงานจะสามารถทำงานหลายๆงานที่เข้ามาพร้อมกันในเวลาเดียวกันได้อย่างไร?

คือการแบ่งงานออกเป็นงานย่อยๆ แล้วสลับการทำงาน ( context switching)เช่น ทำงานย่อยของ task1 แล้วไปทำงานย่อยของ task2ต่อ แล้วกลับมาทำงานย่อยของ task1ใหม่จนงานทั้งหมดเสร็จสมบูรณ์ ดังตัวอย่างด้านล่าง

Parallel เป็นการทำงานหลาย ๆ งานพร้อมกันในเวลาเดียวกัน เช่นมีงานที่ต้องทำ 2 งานหรือมากกว่า และมีผู้ปฏิบัติงาน 2 คน ผู้ปฏิบัติงานคนแรกทำงานที่ 1 และผู้ปฏิบัติงานคนที่สองทำงานที่ 2 ไปพร้อมๆกัน ดังภาพด้านล่าง

การทำงานแบบขนาน (parallel) จะช่วยเพิ่มประสิทธิภาพการทำงานให้เร็วยิ่งขึ้น

Unlisted

--

--

Pratya Khaday
Pratya Khaday

No responses yet