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

  • 相关阅读:
    Swizzle在OC问题排查中的应用
    MacOS中系统提供的音频单元
    Mac catalyst 使用iOS-AudioUnit的音频采集、播放
    删除单向链表中的某一个节点
    C语言的的free和c++的delete的区别
    Mac下使用源码编译安装TensorFlow CPU版本
    ROC曲线与AUC值
    Linux中如何产生core文件?
    更改Linux默认栈空间的大小
    互信息(Mutual Information)
  • 原文地址:https://www.cnblogs.com/twilight/p/1337311.html
Copyright © 2011-2022 走看看