VB.NET多线程委托使用技巧
VB.NET 的多线程用法里,用委托来传参数启动线程,算是个挺实用的小技巧。你不需要搞太多复杂逻辑,写个方法、定义个委托、开个线程就能跑起来,适合那种跑起来就得一阵子的任务。
委托的好处是类型安全,还能当线程的入口点。像下面这样定义:
Public Delegate Sub MyThreadDelegate(ByVal arg As String)
方法里写点输出逻辑啥的,拿个Thread
包起来一开,线程就跑起来了,参数也能顺利带进去。像 UI 线程那边,你总不想点个按钮界面就死住吧?这种时候后台线程派上用场。但 UI 更新只能在主线程干,咋办?用Me.Invoke
。它帮你把更新 UI 的逻辑丢回主线程跑,比如:
Me.Invoke(myDelegate, "完成")
这句你一看就懂。再提一句,记得把线程的IsBackground
设成True
,不然主程序关了线程还吊着,关不干净。如果你想实际跑一遍,资源包WindowsApplication1
里有个完整的例子,打开就能看到结构。
多线程其实没你想的那么难,尤其在 VB.NET 里。写熟了之后,你会发现多耗时操作都能轻松搞定。如果你还不太清楚委托是怎么回事,可以顺手看看.NET Threading Fundamentals,讲得也挺通俗。
100.25KB
文件大小:
评论区