複数の CSV ファイルを読み取り、スレッドを使用してデータをクラスに渡す次のコードがあります。CSV パスと文字列を関数に渡す必要があります (どちらも動的である必要があります)。
Dim MyThread1 As PassResourceDataToClassDelagate = AddressOf PassResourceDataToClass
Dim FileTypes() As String = {".HOURLY", ".INTERVAL", ".EDSOLUTION", ".MCECTRL", ".PNODE"}
Dim TextBoxValues() As String = {RTBMHourlyTextBox.Text, RTBMIntervalTextBox.Text, _
RTBMEDSolutionTextBox.Text, RTBMMCECTRLTextBox.Text, _
RTBMPNodeTextBox.Text}
For K As Integer = 0 To 4
MyThread1.BeginInvoke(DirectCast(ReadCSVFile(TextBoxValues(K)), Object()()), FileTypes(K), Nothing, Nothing)
Next
同じことを行うために Parallel.ForEach を学習しようとしています。インターネットを検索すると、これが得られました(これは機能しません):
Parallel.ForEach(TextBoxValues, FileTypes, Sub(ByRef TBName As String, ByRef FleType As String) _
PassResourceDataToClass(DirectCast(ReadCSVFile(TBName), _
Object()()), FleType))
誰かがより良いアイデアを得ましたか?