У меня есть проблема, которую я пытаюсь решить.
У меня есть приложение, которое читает папку с файлом .mp3
.
Я хочу заполнить ListView
обоими именами файлови продолжительности использования многопоточность , так как это занимает слишком много времени, если я делаю это в одном потоке.
Кажется, я не могу получить это так быстро, как я стараюсь
Любая помощь будет оценена.
Public arr(2) As String
Public itm As ListViewItem
Dim T1, t2 As Thread
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
T1 = New Threading.Thread(AddressOf Me.t1worker)
T1.Start()
t2 = New Threading.Thread(AddressOf t2worker)
t2.Start()
End Sub
Public Sub t1worker()
For Each file As String In IO.Directory.GetFiles("f:\mvideo", "*.*")
arr(0) = IO.Path.GetFileName(file)
Next
End Sub
Public Sub t2worker()
Dim Duration As String
Dim w As New WMPLib.WindowsMediaPlayer
For Each file As String In IO.Directory.GetFiles("f:\mvideo", "*.*")
If AllowedExtension.Contains(IO.Path.GetExtension(file).ToLower)
Dim m As WMPLib.IWMPMedia = w.newMedia(file)
Duration = m.durationString
arr(1) = Duration
End If
arr(1) = Duration
itm = New ListViewItem(arr)
trackinfo.Items.Add(itm)
Next
End Sub