Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

มัลติเธรดใน C #


เธรดถูกกำหนดให้เป็นเส้นทางการดำเนินการของโปรแกรม แต่ละเธรดกำหนดโฟลว์ของ contr ที่ไม่ซ้ำกัน

ใน C # คลาส System.Threading.Thread ใช้สำหรับทำงานกับเธรด อนุญาตให้สร้างและเข้าถึงแต่ละเธรดในแอปพลิเคชันแบบมัลติเธรด เธรดแรกที่จะดำเนินการในกระบวนการเรียกว่าเธรดหลัก

วงจรชีวิตของเธรดเริ่มต้นเมื่อมีการสร้างอ็อบเจ็กต์ของคลาส System.Threading.Thread และสิ้นสุดเมื่อเธรดสิ้นสุดหรือดำเนินการเสร็จสิ้น

ต่อไปนี้คือสถานะต่างๆ ในวงจรชีวิตของเธรด −

  • สถานะไม่เริ่มต้น − เป็นสถานการณ์เมื่อมีการสร้างอินสแตนซ์ของเธรดแต่ไม่มีการเรียกใช้เมธอด Start

  • สถานะพร้อม − เป็นสถานการณ์ที่เธรดพร้อมที่จะรันและรอรอบ CPU

  • สถานะไม่สามารถทำงานได้ − เธรดไม่สามารถดำเนินการได้เมื่อ

    • เรียกวิธีการสลีป
    • เรียกวิธีการรอ
    • ถูกบล็อกโดยการดำเนินการ I/O
  • สถานะที่ตายแล้ว − เป็นสถานการณ์ที่เธรดดำเนินการเสร็จสิ้นหรือถูกยกเลิก

ต่อไปนี้เป็นตัวอย่างที่แสดงวิธีการสร้างเธรดใน C# -

ตัวอย่าง

using System;
using System.Threading;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         Thread th = Thread.CurrentThread;
         th.Name = "MainThread";

         Console.WriteLine("This is {0}", th.Name);
         Console.ReadKey();
      }
   }
}

ผลลัพธ์

This is MainThread