目前正在執行的執行緒可以使用C# 中稱為Sleep() 方法的方法暫停或暫時掛起指定的時間,該時間必須以毫秒為單位指定,並作為參數傳遞給我們的執行緒正在嘗試暫停或使用timespan 屬性,其中有權限指定以小時、分鐘和秒為單位的時間,以便線程可以根據我們的需求暫停更長時間,而不僅僅是毫秒。
文法:
Thread.Sleep(Time_in_milliseconds);
或
TimeSpaninstance_name = new TimeSpan(Time_in_hours_minutes_seconds); Thread.Sleep(instance_name);
其中instance_name是TimeSpan類別的實例名稱。
以下是C#Thread Sleep的範例:
C# 程式示範 Sleep() 方法,並以毫秒為單位傳遞時間作為參數。
代碼:
using System; using System.Threading; //a class called program is created public class program { //a method called samplemethod which accepts a parameter is created public void samplemethod(object str) { for (int z = 0; z < 5; z++) { Console.WriteLine("The thread that is executing is {0}", str); Thread.Sleep(200); } } } //a class called check is created public class check { //main method is called public static void Main() { //two string variables are created which are passed as parameter previously created method in program class string Iamthread1 = null; string Iamthread2 = null; //an instance of the program class is created program d = new program(); Thread firstthread = new Thread(new ParameterizedThreadStart(d.samplemethod)); Thread secondthread=new Thread(new ParameterizedThreadStart(d.samplemethod)); firstthread.Start("Iamthread1"); secondthread.Start("Iamthread2"); } }
輸出:
說明:在上面的程式中,創建了一個稱為程式的命名空間,其中創建了一個稱為範例方法的方法,該方法接受一個參數,在該方法中操作該方法的執行緒將暫停一段時間。使用 Sleep() 方法指定時間。然後建立一個名為 check 的類,在該類別中呼叫 main 方法,在該方法中建立執行緒的兩個實例,然後使用 Start() 方法開始在範例方法上執行它們。由於在採樣方法上運行的執行緒使用了 Sleep() 方法,因此執行緒不會連續執行。
使用 TimeSpan 屬性來示範 Sleep() 方法的 C# 程式。
代碼:
using System; using System.Threading; //a class called program is created public class program { //a method called samplemethod which accepts a parameter is created public void samplemethod(object str) { //TimeSpan property is used to specify the duration of time for which the thread must be paused TimeSpan timeout = new TimeSpan(0, 0, 3); for (int z = 0; z < 3; z++) { Console.WriteLine("The thread that is executing is {0}", str); Thread.Sleep(timeout); } } } //a class called check is created public class check { //main method is called public static void Main() { //two string variables are created which are passed as parameter previously created method in program class string Iamthread1 = null; string Iamthread2 = null; //an instance of the program class is created program d = new program(); Thread firstthread = new Thread(new ParameterizedThreadStart(d.samplemethod)); Thread secondthread = new Thread(new ParameterizedThreadStart(d.samplemethod)); firstthread.Start("Iamthread1"); secondthread.Start("Iamthread2"); } }
輸出:
說明:在上面的程式中,建立了一個稱為程式的命名空間,在該命名空間中建立了一個稱為範例方法的方法,該方法接受一個參數,在該方法中操作該方法的執行緒會暫停一段時間。使用 TimeSpan 屬性來計算時間。然後建立一個名為 check 的類,在該類別中呼叫 main 方法,在該方法中建立執行緒的兩個實例,然後使用 Start() 方法開始在範例方法上執行它們。由於在採樣方法上運行的執行緒上使用了 Sleep() 方法,因此執行緒不會連續執行。輸出如上面的快照所示。
在本教程中,我們透過程式設計範例及其輸出了解 ThreadSleep 方法的定義、語法和工作原理,了解 C# 中 ThreadSleep 方法的概念。
這是 C# 線程睡眠指南。在這裡,我們討論 C# 執行緒睡眠簡介及其工作原理以及範例和程式碼實作。您也可以瀏覽我們其他推薦的文章以了解更多資訊 –
以上是C# 線程睡眠的詳細內容。更多資訊請關注PHP中文網其他相關文章!