VB.NETで指定されたスレッドを一時停止する方法

VB.NETでは、スレッドの実行を一時停止にするには、Thread.Sleepメソッドを使用します。指定されたスレッドを一時停止させるには、Thread.Suspendメソッドを使用します。

以下にサンプルコードを示します。

Imports System.Threading

Public Class ThreadExample
    Private Shared thread1 As Thread
    Private Shared thread2 As Thread

    Public Shared Sub Main()
        ' 创建两个线程
        thread1 = New Thread(AddressOf ThreadMethod1)
        thread2 = New Thread(AddressOf ThreadMethod2)

        ' 启动线程
        thread1.Start()
        thread2.Start()

        ' 暂停线程2
        thread2.Suspend()

        ' 等待一段时间
        Thread.Sleep(5000)

        ' 恢复线程2的执行
        thread2.Resume()

        ' 等待线程执行完成
        thread1.Join()
        thread2.Join()
    End Sub

    Private Shared Sub ThreadMethod1()
        Console.WriteLine("Thread 1 is running")
        Thread.Sleep(1000)
        Console.WriteLine("Thread 1 is finished")
    End Sub

    Private Shared Sub ThreadMethod2()
        Console.WriteLine("Thread 2 is running")
        Thread.Sleep(1000)
        Console.WriteLine("Thread 2 is finished")
    End Sub
End Class

上記のコードでは、スレッドthread1とthread2を作成し、それらの開始を行います。その後、thread2の処理をthread2.Suspendメソッドで一時停止します。続いて5秒間待機し、thread2.Resumeメソッドでthread2の処理を再開します。最後に、thread1.Joinとthread2.Joinメソッドによって2つのスレッドの処理完了を待ちます。

bannerAds