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
- คุณอยู่ที่:
- คู่มือ
- ความหมายคำ คืออะไร
- Thread คืออะไร เทรด คือหน่วยการทำงานย่อยของโปรเซส
- เขียนโดย Thread Thread
- หมวดหลัก: สารานุกรม IT
- หมวด: ความหมาย คำวลี คืออะไร ความหมาย คำวลี คืออะไร
- 14 มีนาคม 2560





บทความล่าสุด
- ติดตั้ง MooZiiCart V. 1 บน ProFreeHost (ตั้งแต่สมัครใช้งาน)
- แนะนำวิธีการนับคำ ด้วยภาษา PHP
- 5 เทคนิคการถ่ายภาพที่คุณควรรู้
- แนะนำการติดตั้ง Plugin Woocommerce บน WordPress สำหรับทำเว็บไซต์ขายสินค้า โดยไม่เสียค่าใช้จ่าย!!
- มาทำความรู้จักกับ BMR (Body Metabolic Rate)
- รูปแบบ Form HTML สำหรับการลงชื่อเข้าใช้ และสมัครสมาชิก
- ประยุกต์ใช้ทำปุ่ม drop - down แสดงข้อมูลลงในตาราง
VDO บทเรียน live
สอนเขียนโปรแกรม
- บทเรียน MySQL Store Procedure (14)
- บทเรียน PostgreSQL Stored Procedures (5)
- บทเรียน Phalcon Framework (0)
- บทเรียน Python Framework Flask (21)
- บทเรียน HTML (39)
- บทเรียน HTML5 (29)
- บทเรียน CSS (56)
- บทเรียน Bootstrap (6)
- บทเรียน สอนเขียน php พื้นฐาน (48)
- บทเรียน ReactJS (13)
- บทเรียน PHP5 OOP (16)
- บทเรียน Joomla Framework พัฒนา Extension จุมล่า (32)
- บทเรียน Yii Framework (21)
- บทเรียน SQL (28)
- บทเรียน สอนการใช้งาน phpMyadmin (19)
- บทเรียน สอน PostgreSQL (23)
- บทเรียน Javascript (22)
- บทเรียน AJAX (10)
- บทเรียน jQuery (14)
- บทเรียน พัฒนา App บน Android OS (9)
- บทเรียน Python (58)
- บทเรียน Java (14)
- เรียนภาษาอังกฤษกับโปรแกรมเมอร์ ฉบับโปรแกรมเมอร์สอน (32)
- บทเรียนอื่นๆ (4)
- VDO Tutorial (0)
- บทเรียน Python GUI (145)
- บทเรียน Python Tensorflow (14)
- บทเรียน Laravel Framework (6)
- บทเรียน Python Framework FastAPI (22)
- บทเรียน Dart & Flutter (5)
เนื้อหาใกล้เคียง
- 2557-04-22 - PhoneGap คืออะไร PhoneGap เป็น Framework พัฒนา Mobile Application
- 2557-04-11 - WordPress : การใช้งานเมนู เรื่อง
- 2552-02-12 - php Unix Timestamp คืออะไร เวลาในหน่วยวินาทีของวัน วันวาเลนไทน์ Valentine 1234567890
- 2549-11-18 - การตรวจดู Webbrowser ของผู้มาเยือนว่าเป็นตัวไหน ด้วย PHP
- 2557-04-13 - Hosting ที่ Mindphp.com ใช้อยู่ ตรวจสอบแล้วไม่มีปัญหา ช่องโหว่ Heartbleed
กระทู้ล่าสุดจากเว็บบอร์ด