zoukankan      html  css  js  c++  java
  • 异步实例

    Public Class Form1

        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        End Sub

        Delegate Function InsertDataListDelegate() As Boolean
        Delegate Sub FlashControllerDelegate(ByVal i As Integer)

        Dim instanceDelegate As InsertDataListDelegate = AddressOf InsertDataList

        Public Function InsertDataList() As Boolean
            Dim i As Long
            'Throw New Exception("fff")
            For i = 1 To 9999
                FlashController(i)
            Next
            MsgBox("OVER")
        End Function

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim ar As System.IAsyncResult
            ar = instanceDelegate.BeginInvoke(CallBackDelegate, Nothing)
        End Sub

        Public Sub FlashController(ByVal i As Integer)
            If Me.InvokeRequired Then
                Invoke(New FlashControllerDelegate(AddressOf FlashController), i)
                Return
            End If
            ComboBox1.Items.Add(i)
        End Sub

        '回调函数的参数
        Dim myValue As Integer = 10
        '回调函数的定义
        Sub PutToDesk(ByVal ar As IAsyncResult)
            Console.WriteLine(ar.IsCompleted) '拿到参数
            '相应的操作
        End Sub

        Private CallBackDelegate As AsyncCallback = AddressOf PutToDesk

    End Class

  • 相关阅读:
    100个高质量的photoshop画笔
    VC调用DLL库方法的方法
    VC6中使用CHtmlView在对话框控制中显示HTML
    CtrlList 排序问题。
    VC ADO使用说明
    VC右键弹出菜单的实现
    VC6工程项目文件说明
    VC6中用DOM遍历网页中的元素
    C/C++头文件一览
    最常见的20种VC++编译错误信息
  • 原文地址:https://www.cnblogs.com/twilight/p/1337311.html
Copyright © 2011-2022 走看看