çağırır ekstresinde durak:vb.NET'te Me.Invoke aslında "başlatmak" değildir - ipler Aşağıdaki kodu var
Public Delegate Sub SetStatusBarTextDelegate(ByVal StatusText As String)
Private Sub SetStatusBarText(ByVal StatusText As String)
If Me.InvokeRequired Then
Me.Invoke(New SetStatusBarTextDelegate(AddressOf SetStatusBarText), StatusText)
Else
Me.labelScanningProgress.Text = StatusText
End If
End Sub
problem, ben "SetStatusBarText" çağırdığınızda Başka bir iş parçacığı alt, InvokeRequired True (olması gerektiği gibi), ancak sonra benim iş parçacığı Me.Invoke deyiminde durdu - yürütme duraklatma, yalnızca orada oturan, aslında hiçbir şey çağırmak değil, hepsini gösterir.
İpliklerin neden Invoke'den korktuğuna dair herhangi bir düşünce var mı?
Tam olarak bu da devam ediyordu - "Me.Invoke" ana iş parçacığının yanıt vermesini bekliyordu, ancak ana iş parçacığı, iş parçacığının son iş parçacığı olduğu için iş parçacığı Threadpool'a tıkıştırmakla meşgul. Bahşişin için teşekkürler. – SqlRyan
Teşekkürler! Invokes'ın bitirmesini bekledim ama hepsi donmuştu. System.Windows.Forms.Application.DoEvents() için bir çağrı ekledim ve çalışır. –