Вызвать метод для многопоточного приложения?

У меня есть ошибка в моем приложении, которая совпадает сВот который этот человек сталкивался с той же проблемой. Мое приложение является многопоточным, где рабочий поток обновляет график формы волны в пользовательском интерфейсе. Я полагаю, что именно в этом моя проблема, и поэтому периодически, а иногда и при запуске приложения, я получаю большой красный крестик по крайней мере в одном из моих объектов waveformgraph. Из чтения и исследования мне нужно использовать метод Invoke или BeginInvoke? Может кто-нибудь объяснить лучше и предоставить пример кода, который имеет отношение к моему коду? Образцы, которые я нашел до сих пор, все еще неясно, как мне нужно это делать или что мне нужно делать. Спасибо за помощь.

Этот код находится в событии щелчка swScopeOnOff, основной поток.

  thread2 = New System.Threading.Thread(AddressOf dataAcquiring)
  thread2.Start()

Этот код находится в dataAquying Sub

  Public Sub dataAcquiring()
    'While Scope switch is on, stream each Ai channel's data continuously to its respective WaveForm graph
    Do While swScopeOnOff.Value = True
            data = reader.ReadWaveform(readRate)
            i = 0
            For Each WaveformGraph In WFGS
                WaveformGraph.PlotWaveformAppend(data(i)) 'This line is updating the UI's waveform graphs
                i += 1
            Next
            i = 0
    Loop
End Sub

Ответы на вопрос(1)

Ваш ответ на вопрос