引数つきで別スレッドの処理を実行する


別スレッドで実行したいメソッドに引数を与えたいときの使用例。
同時にSQLを実行して負荷を与えたい場合などに便利。

    '*****************************************************************************************
    '   メイン処理
    '*****************************************************************************************
    Public Sub Main()

        'テストデータ設定
        wkArry(1) = {94947, "11111", 201012, 2, 20101231}
        wkArry(2) = {94948, "22222", 201012, 2, 20101231}
        wkArry(3) = {94949, "33333", 201012, 2, 20101231}
        wkArry(4) = {94950, "44444", 201012, 2, 20101231}
        wkArry(5) = {94951, "55555", 201012, 2, 20101231}

	'5回繰り返す
        For i = 1 To 5

	  'スレッドオブジェクトを定義
            Dim objTh As Thread

            'スレッドを引数付で生成         
            objTh  = New System.Threading.Thread(New System.Threading.ParameterizedThreadStart(AddressOf ThreadMethodTest))

            'スレッドスタート (引数つき)
            objTh.Start(wkArry(i))

        Next


    End Sub

    '*****************************************************************************************
    '   別スレッド呼び出されるメソッド定義
    '*****************************************************************************************
    Public Sub ThreadMethodTest(ByVal Arry() As String)
        
        'このメソッド内に別スレッドで処理したい内容を記述

    End Sub


動作確認環境:Visual Stadio 2020,.NetFramework 2.0