VB.NET使用委托解决窗体卡死的情况

    Private Sub 开始读取(sender As Object, e As EventArgs) Handles 开始读取参数按钮.Click
        Dim myInvoker As MethodInvoker = New MethodInvoker(AddressOf 读取参数LongTime)
        myInvoker.BeginInvoke(Nothing, Nothing)
    End Sub
    Private Delegate Sub updateDelegate(ByVal item, ByVal 列表框) '声明一个委托,参数和委托的过程参数保持一致
    Sub 读取参数LongTime()
        'do something
        '假如里面有个ListBox要在这个过程中更新,那么也要使用委托
        '更新ListBox1列表框内的item
        Me.Invoke(New updateDelegate(AddressOf updateItem), updateValue, ListBox1) '委托和过程绑定并执行
    End Sub
    Private Sub updateItem(ByVal item, ByVal 列表框) '委托绑定的过程
        列表框.Items.add(item)
    End Sub

使用委托可以避免窗体假死,但是实际测试发现,程序实行的时间变的很长,不知道有什么办法解决???

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值