Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kaedah Sertai, Tidur dan Batalkan dalam utas C#

Kaedah Sertai, Tidur dan Batalkan dalam utas C#

WBOY
WBOYke hadapan
2023-09-15 11:01:091601semak imbas

C# 线程中的 Join、Sleep 和 Abort 方法

Join

Sekat urutan panggilan sehingga rangkaian ditamatkan, sambil meneruskan pengepaman COM dan SendMessage standard. Kaedah ini mempunyai bentuk lebihan beban yang berbeza.

Tidur

Menjeda benang untuk satu tempoh masa.

Abort

Kaedah Abort digunakan untuk memusnahkan benang.

Mari kita lihat contoh Join() dalam thread -

Contoh

using System;
using System.Diagnostics;
using System.Threading;
namespace Sample {
   class Demo {
      static void Run() {
         for (int i = 0; i < 2; i++)
         Console.Write("Sample text!");
      }
      static void Main(string[] args) {
         Thread t = new Thread(Run);
         t.Start();
         t.Join();
         Console.WriteLine("Thread terminated!");
         Console.Read();
      }
   }  
}

Mari kita lihat abort() dan contoh tidur().

Contoh

using System;
using System.Threading;
namespace Demo {
   class ThreadCreationProgram {
      public static void CallToChildThread() {
         try {
            Console.WriteLine("Child thread starts");
            // do some work, like counting to 10
            for (int counter = 0; counter <= 10; counter++) {
               Thread.Sleep(500);
               Console.WriteLine(counter);
            }
            Console.WriteLine("Child Thread Completed");
         } catch (ThreadAbortException e) {
            Console.WriteLine("Thread Abort Exception");
         } finally {
            Console.WriteLine("Couldn&#39;t catch the Thread Exception");
         }
      }
      static void Main(string[] args) {
         ThreadStart childref = new ThreadStart(CallToChildThread);
         Console.WriteLine("In Main: Creating the Child thread");
         Thread childThread = new Thread(childref);
         childThread.Start();
         //stop the main thread for some time
         Thread.Sleep(2000);
         //now abort the child
         Console.WriteLine("In Main: Aborting the Child thread");
         childThread.Abort();
         Console.ReadKey();
      }
   }
}

Atas ialah kandungan terperinci Kaedah Sertai, Tidur dan Batalkan dalam utas C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam