鸟语天空
异步委托
post by:追风剑情 2016-6-29 11:05

委托异步执行

示例一

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DelegateTest
{
    public delegate string MyDelegate(object data);

    class Program
    {
        static void Main(string[] args)
        {
            MyDelegate mydelegate = new MyDelegate(TestMethod);
            IAsyncResult result = mydelegate.BeginInvoke("Thread Param", TestCallback, "Callback Param");

            //异步执行完成
            string resultstr = mydelegate.EndInvoke(result);
            Console.WriteLine("resultstr=" + resultstr);

            Console.Read();
        }

        //线程函数
        public static string TestMethod(object data)
        {
            string datastr = data as string;
            return datastr;
        }

        //异步回调函数
        public static void TestCallback(IAsyncResult data)
        {
            Console.WriteLine(data.AsyncState);
        }
    }
}

 

运行测试

111111.png

 

评论:
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容