[.NET] 多执行绪问题

楼主: noworneverev (小朋友)   2018-04-01 13:13:38
请输入专案类型(网站专案或者应用程式专案):VB .NET
小弟有个winform主程式已经完成,但因为里面有几个循环,会跑比较久
想在点选启动的按钮时,同时开启另一个winform放张正在加载的图,
目前想到是用threading处理,
Imports System.Threading
Private Sub Progress()
'Loading是放加载图的winform
Dim f As Loading = New Loading()
f.Show()
f.BringToFront()
End Sub
主程式:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles
Button1.Click
Dim t As Thread
t = New Thread(AddressOf Progress)
t.Start()
'....
'some code here
t.abort()
end sub
现在的问题是启动时loading的winform会闪一下后马上消失,不知道原因,
即使后面没有写abort也是会立刻消失
但如果在Progress的子程序加上个msgbox(""),就不会立刻跳掉,
想请问这问题该如何解决?毕竟多加个msgbox会很奇怪
谢谢!
作者: jerick (杰.J)   2018-05-17 22:47:00
因为 Progress 执行完,其在 Progress 内宣告的物建也会被释放。你可以试试把 Dim f As Loading 放到外面当成公用变量。试试。

Links booklink

Contact Us: admin [ a t ] ucptt.com