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

Đa luồng 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 contr.

Trong C #, lớp System.Threading.Thread được sử dụng để làm việc với các luồng. Nó cho phép tạo và truy cập các luồng riêng lẻ trong một ứng dụng đa luồng. Luồng đầu tiên được thực thi trong một quy trình được gọi là luồng chính.

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 trong C # -

Ví dụ

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();
      }
   }
}

Đầu ra

This is MainThread