C# スレッドの Join、Sleep、Abort メソッド

WBOY
リリース: 2023-09-15 11:01:09
転載
1606 人が閲覧しました

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

Join

標準の COM と SendMessage のポンピングを継続しながら、スレッドが終了するまで呼び出し元のスレッドをブロックします。このメソッドにはさまざまなオーバーロード形式があります。

Sleep

スレッドを一定期間一時停止します。

Abort

Abort メソッドは、スレッドを破棄するために使用されます。

スレッドでの Join() の例を見てみましょう -

Example

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();
      }
   }  
}
ログイン後にコピー

スレッドでの abort() と sleep() の例を見てみましょう。

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();
      }
   }
}
ログイン後にコピー

以上がC# スレッドの Join、Sleep、Abort メソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート