我有一个vb.net窗体,它生成使用crystal report(后端是sql server数据库表)显示的报告。生成报告并显示后,过程会将报告的内容更新到表中。此更新过程大约需要一分钟。此更新过程冻结报告窗口,光标停滞,直到更新过程完成。
所以我将代码从更新过程移到了一个类,并将其作为一个线程调用。该报告可在显示时立即访问,更新过程将在后台运行。
Dim urctThread As Thread
Dim csURCT As ClassURCT = New ClassUpdateRCT()
urctThread = New Thread(New ThreadStart(AddressOf csURCT.URCT))
urctThread.Priority = Threading.ThreadPriority.Lowest
urctThread.IsBackground = True
urctThread.Start()
我的问题是,如果用户关闭调用该线程的表单会发生什么。线程是否会终止,还是会一直持续到更新过程的执行完成为止。
我是线程编程的新手,也是编程方面的门外汉(自学成才)。非常感谢您在这里的宝贵意见。
问候。