Please enable JavaScript.
Coggle requires JavaScript to display documents.
เธรด - Coggle Diagram
เธรด
-
-
-
-
-
-
ตัวอย่างการใช้เธรด
ชอฟต์แวร์ปัจจุบันที่รันกับเครื่องพีชีสมัยใหม่มีการออกแบบให้เป็น Multithread โดยแยก
ออกเป็นโพรเชสที่ควบคุมหลาย ๆ เธรด เช่น โปรแกรมเว็บบราวเซอร์ที่มีเธรดหนึ่งในการแสดงรูปภาพหรือ
เขียนข้อความในขณะที่อีกเธรดหนึ่งกำลังดึงข้อมูลจากเน็ตเวิร์ค หรือในโปรแกรมเวิร์ดโพรเซสเซอร์ที่มี
หลายเธรด โดยที่เธรดหนึ่งกำลังแสดงภาพกราพฟิก เธรดที่สองกำลังรอรับคำสั่งจากคีย์บอร์ดจากผู้ใช้
ในขณะที่เธรดที่สามกำลังตรวจสอบคำสะกดและไวยากรณ์ในลักษณะทำงานอยู่เบื้องหลัง เป็นต้น
-
การยกเลิกเธรด
การยกเลิกเธรดเป็นการทำให้เธรดจบการทำงานก่อนที่จะเสร็จสมบูรณ์ เช่น ถ้ามีหลายเธดค้นหา
ข้อมูลในฐานข้อมูลพร้อมกัน แล้วมีเธรดหนึ่งให้ผลลัพธ์ออกมาแล้วเธรดที่เหลือจะถูกยกเลิกในสภาวะอื่น
อาจจะเกิดเมื่อผู้ใช้กดปุ่มบนโปรแกรมเว็บบราวเชอร์เพื่อหยุดการโหลดข้อมูล เนื่องจากการโหลดข้อมูลจะ
ใช้เธรดแยกกับการกดปุ่มบนคีย์บอร์ด ดังนั้นเมื่อผู้ใช้มีการกดปุ่ม Stop บนคีย์บอร์ด จึงทำให้โปรแกรม
เว็บบราวเชอร์หยุดการโหลดข้อมูล เธรดที่ถูกยกเลิกอาจเรียกว่า Target thread ซึ่งการยกเลิกอาจมี 2
รูปแบบที่ต่างกัน ตังนี้ความยุ่งยากในการยกเลิกจะเกิดในภาวะที่ทรัพยากรถูกกำหนดให้ยกเลิกเธรด หรือมี
เธรดหนึ่งถูกยกเลิกในขณะอยู่ระหว่างการบันทึกข้อมูลที่ใช้ทรัพยากรร่วมกันอยู่กับเรรดอื่น สิ่งนี้เป็นกรณี
พิเศษของการยกเสิกแบบ Asynchronous ระบบปฏิบัติการมักจะแก้ปัญหาทรัพยากรจากการยกเสิกเธรด
แต่ไม่ใช่ทุกทรัพยากร