Thread คืออะไร  
      Thread คือ หน่วยการทำงานย่อยที่อยู่ใน process มีการแบ่งปันทรัพยากรต่างๆ ใน process นั้นๆ โดยปกติ Process ที่มี 1 thread จะเรียกว่า Single thread หรือเรียกว่า Heavy Weight  Process ซึ่งมักพบใน OS รุ่นเก่า แต่ถ้า 1 process มีหลาย thread จะเรียกว่า Multithread หรือ Light  Weight Process ซึ่งพบได้ใน OS รุ้นใหม่ที่ใช้กันในปัจจุบันทั่วไป และ Multithread ก็เป็นที่นิยมมากกว่า Single thread
      เหตุที่ต้องมี Thread คือการเรียกใช้ CPU ให้เกิดประโยชน์สูงสุด Thread ทำให้การทำงานของโปรแกรมง่าย และมีประสิทธิภาพมากขึ้นและมีประโยชน์ต่อระบบที่มี multi CPU หรือ multi core เพราะสามารถเรียกใช้ thread หลายๆ ตัวได้พร้อมๆ กัน โดย thread แต่ละตัว ของโปรเซส เดียวกันจะทำงานแตกต่างกันแต่มีความเกี่ยวข้องกันบางอย่างและต้องทำงานอยู่ภายใต้สภาพแวดล้อมเดียวกัน
  องค์ประกอบภายในเธรด (Threads) ประกอบด้วย
1. Threads ID หมายเลขเทรดที่อยู่ในโปรเซส
2. Counter ตัวนับเพื่อติดตามคำสั่งที่จะถูกดำเนินการเป็นลำดับถัดไป (Execute)
3. Register หน่วยความจำเก็บค่าตัวแปรที่ทำงานอยู่ปัจจุบัน
4. Stack เก็บประวัติการทำงาน (Execute)
 ประโยชน์ของมัลติเทรด ( Multi-Threads)
1. การตอบสนอง (Response)  ในเรื่องของการทำงานมีการตอบสนองที่ดีกับผู้ใช้ (user) ถ้าการทำงานของ โปรแกรมประยุกต์ของผู้ใช้นั้นมีบางส่วนภายในโปรเซสถูกบล๊อกหรือใช้เวลามากเกินไป OS ก็ยังสามารถจัดสรรให้งานอื่น ๆ  ภายในโปรเซสนั้นประมวลผลต่อไปได้
2. การใช้ทรัพยากรร่วมกัน (Share Resource)  สามารถใช้โค้ม (code)  ใช้โปรแกรม (application) และใช้หน่วยความจำ (memory)  ร่วมกันระหว่างโปรเซสเดียวกันได้
3. ประหยัด (Economic)  ประหยัดการใช้หน่วยความจำในการทำงานของโปรเซส   เนื่องจากแต่ละเทรด (Thread) มีการใช้หน่วยความจำของโปรเซสร่วมกัน
4. ด้านโครงสร้างของมัลติเทรด (Multithread  Architecture) การเอื้อประโยชน์ด้านโครงสร้างระบบ ที่งานย่อยภายในโปรเซสให้สามารถทำงานร่วมกัน ประสานจังหวะการทำงานและใช้ทรัพยากรของโปรเซสร่วมกันได้



ข้อมูลอ้างอิง
http://www.thaiall.com
http://www.no-poor.com
กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ลักษณะการทดสอบโปรแกรมที่ไม่เหมาะกับการทดสอบอัตโนมัติ
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:49 pm บอร์ด Software testing
0
297
พฤ 04 เม.ย. 2024 4:49 pm โดย athirach.offcial View Topic ลักษณะการทดสอบโปรแกรมที่ไม่เหมาะกับการทดสอบอัตโนมัติ
Tester trick ข้อควรระวังในการทดสอบโปรแกรม
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:43 pm บอร์ด Software testing
0
100
พฤ 04 เม.ย. 2024 4:43 pm โดย athirach.offcial View Topic Tester trick ข้อควรระวังในการทดสอบโปรแกรม
การทดสอบและบทบาทของผู้ทดสอบโปรแกรมอัตโนมัติในปี 2024
โดย athirach.offcial พฤ 04 เม.ย. 2024 4:38 pm บอร์ด Software testing
0
89
พฤ 04 เม.ย. 2024 4:38 pm โดย athirach.offcial View Topic การทดสอบและบทบาทของผู้ทดสอบโปรแกรมอัตโนมัติในปี 2024
ตัวอย่าง Prefix และ Suffix ในภาษาอังกฤษ
โดย internTk21 พฤ 04 เม.ย. 2024 4:34 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
164
พฤ 04 เม.ย. 2024 4:34 pm โดย internTk21 View Topic ตัวอย่าง Prefix และ Suffix ในภาษาอังกฤษ
เครื่องอ่านบาร์โค้ด สามารถ สแกนกลับหัว กลับหางได้ไหม และนี่คือคำตอบจาก ChatGPT
โดย mindphp พฤ 04 เม.ย. 2024 4:23 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
107
พฤ 04 เม.ย. 2024 4:23 pm โดย mindphp View Topic เครื่องอ่านบาร์โค้ด สามารถ สแกนกลับหัว กลับหางได้ไหม และนี่คือคำตอบจาก ChatGPT
คำศัพท์ภาษาอังกฤษ Homonyms ที่พบได้ในชีวิตประจำวัน
โดย internTk21 พฤ 04 เม.ย. 2024 2:18 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
117
พฤ 04 เม.ย. 2024 2:18 pm โดย internTk21 View Topic คำศัพท์ภาษาอังกฤษ Homonyms ที่พบได้ในชีวิตประจำวัน
การออกเสียงคำศัพท์ที่ลงท้ายด้วย-ed ในภาษาอังกฤษ
โดย internTk21 พฤ 04 เม.ย. 2024 12:54 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
108
พฤ 04 เม.ย. 2024 12:54 pm โดย internTk21 View Topic การออกเสียงคำศัพท์ที่ลงท้ายด้วย-ed ในภาษาอังกฤษ
ตัวอักษร phonetic ในภาษาอังกฤษที่เสียงสั่น(Voiced)และไม่สั่น(Voiceless)
โดย internTk21 พฤ 04 เม.ย. 2024 10:27 am บอร์ด Microsoft Office Knowledge & line & Etc
0
100
พฤ 04 เม.ย. 2024 10:27 am โดย internTk21 View Topic ตัวอักษร phonetic ในภาษาอังกฤษที่เสียงสั่น(Voiced)และไม่สั่น(Voiceless)