Vb.net 线程没有被调用
我正在尝试调用按钮单击事件的线程。我不认为我的代码没有语法错误。但它不起作用Vb.net 线程没有被调用,vb.net,multithreading,Vb.net,Multithreading,我正在尝试调用按钮单击事件的线程。我不认为我的代码没有语法错误。但它不起作用 Private Sub btnHisStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHisStart.Click thrHis = New Thread(AddressOf threadHistorical) thrHis.Start() End Sub
Private Sub btnHisStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHisStart.Click
thrHis = New Thread(AddressOf threadHistorical)
thrHis.Start()
End Sub
Private Sub threadHistorical()
'code
End Sub
添加这一行并检查它
System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = False
你调试过吗?你能在
threadhistoric
方法中显示代码吗?如果你不小心,你可能会遇到竞争条件和死锁。您可能有多个线程试图同时更新同一个控件。谢谢。这就是我试图在同一个表单上创建线程数的原因。因此,它们可能是重叠的。无论如何,我的问题解决了-1设置CheckForIllegalCrossThreadCalls=False
是一个坏习惯。虽然看起来它已经解决了问题,但它会回来咬你。您应该使用Control.Invoke
而不是head查看有关CheckForIllegalCrossThreadCalls的更多信息