源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#同步和异步调用方法实例

  • 时间:2020-12-26 10:38 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#同步和异步调用方法实例
[u]复制代码[/u] 代码如下:
namespace ConsoleTest {     class Program     {         static void Main(string[] args)         {             Console.WriteLine("********同步调用开始**********");             int result = Add(1,2);             Console.WriteLine("同步调用完毕,执行结果为:" + result);             Console.WriteLine("********异步调用开始**********");             SynAdd(1, 2, (r) => {                 Console.WriteLine("异步调用完毕,执行结果为:" + r);             });             Console.WriteLine("-------完毕!----------");             Console.ReadLine();         }         /// <summary>         /// 同步方法         /// </summary>         /// <param name="a"></param>         /// <param name="b"></param>         /// <returns></returns>         static int Add(int a, int b)         {             Thread.Sleep(5000);             return a + b;         }         /// <summary>         /// 异步调用         /// </summary>         /// <param name="a"></param>         /// <param name="b"></param>         /// <param name="callback">委托对象</param>         static void SynAdd(int a, int b, Action<int> callback)         {             Func<int> func = () =>             {                 Thread.Sleep(5000);                 return a+b;             };//声明异步方法实现方式             func.BeginInvoke((ar) =>             {                 var result = func.EndInvoke(ar);//调用完毕执行的结果                 callback.Invoke(result);//委托执行,回传结果值             }, null);         }     } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部