Computer >> Máy Tính >  >> Lập trình >> C#

Chủ đề trong C #

Một luồng được định nghĩa là đường dẫn thực thi của một chương trình. Mỗi luồng xác định một luồng điều khiển duy nhất. Nếu ứng dụng của bạn liên quan đến các hoạt động phức tạp và tốn thời gian, thì việc đặt các đường dẫn hoặc luồng thực thi khác nhau, với mỗi luồng thực hiện một công việc cụ thể thường rất hữu ích.

Vòng đời của một luồng bắt đầu khi một đối tượng của lớp System.Threading.Thread được tạo và kết thúc khi luồng đó kết thúc hoặc hoàn thành việc thực thi.

Sau đây là các trạng thái khác nhau trong vòng đời của một luồng -

  • Trạng thái chưa bắt đầu - Đó là tình huống khi phiên bản của luồng được tạo nhưng phương thức Start không được gọi.

  • Trạng thái sẵn sàng - Đây là tình huống khi luồng đã sẵn sàng chạy và chờ chu kỳ CPU.

  • Trạng thái không chạy được - Một chuỗi không thể thực thi, khi

    • Phương pháp ngủ đã được gọi là
    • Phương thức chờ đã được gọi
    • Bị chặn bởi các hoạt động I / O
  • Trạng thái đã chết - Đây là tình huống khi luồng hoàn thành thực thi hoặc bị hủy bỏ.

Sau đây là một ví dụ cho thấy cách tạo một chuỗi -

Ví dụ

using System;
using System.Threading;

namespace Demo {
   class Program {
      public static void ThreadFunc() {
         Console.WriteLine("Child thread starts");
      }

      static void Main(string[] args) {
         ThreadStart childref = new ThreadStart(ThreadFunc);
         Console.WriteLine("In Main: Creating the Child thread");
         Thread childThread = new Thread(childref);
         childThread.Start();
         Console.ReadKey();
      }
   }
}

Đầu ra

In Main: Creating the Child thread
Child thread starts