C#异步回调

本文介绍了一个使用C#实现的异步处理示例。通过定义一个异步委托AsyncEventHandler,该委托接收两个整数参数并返回一个整数结果。在Form2构造函数中,创建了AsyncEventHandler实例,并使用BeginInvoke启动异步调用。Cal方法实现了具体的业务逻辑,即计算两个整数的和并打印结果。Callback方法用于处理异步操作完成后的回调逻辑。
public delegate int AsyncEventHandler(int a, int b);
        public delegate void Del();

        public Form2()
        {
            InitializeComponent();
            Console.WriteLine("Start");
            AsyncEventHandler asyncHandler = new AsyncEventHandler(Cal);
            asyncHandler.BeginInvoke(1, 2, new AsyncCallback(Callback), null);
            Console.WriteLine("End");
        }

        public int Cal(int a, int b)
        {
            int c = a + b;
            Console.WriteLine(c);
            return c;
        }

        public void Callback(IAsyncResult result)
        {
            AsyncEventHandler asyncHandler = (AsyncEventHandler)((AsyncResult)result).AsyncDelegate;
            Console.WriteLine(asyncHandler.EndInvoke(result));
            Console.WriteLine("CallBack End");
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值