异步编程练习


1classProgram
2{
3staticvoidMain(string[]args)
4{
5//异步委托方法一
6Func<int,int>func=newFunc<int,int>(Square);
7IAsyncResultar1=func.BeginInvoke(10,null,null);
8while(!ar1.IsCompleted)
9Console.WriteLine(func.EndInvoke(ar1));
10
11//异步委托方法二
12IAsyncResultar2=func.BeginInvoke(20,null,null);
13ar2.AsyncWaitHandle.WaitOne();
14Console.WriteLine(func.EndInvoke(ar2));
15
16//异步委托方法三
17IAsyncResultar3=func.BeginInvoke(30,
18result=>
19{
20if(result.IsCompleted)
21Console.WriteLine(func.EndInvoke(result));
22}
,
23func);
24
25//后台线程方法
26BackgroundWorkerworker=newBackgroundWorker();
27worker.DoWork+=(s,e)=>e.Result=Square((int)e.Argument);
28worker.RunWorkerCompleted+=(s,e)=>Console.WriteLine(e.Result);
29worker.RunWorkerAsync(40);
30
31//多线程方法
32Threadthread=newThread(newThreadStart(()=>Console.WriteLine(Square(50))));
33thread.Start();
34
35Console.ReadLine();
36}

37
38//可以为耗时的操作
39privatestaticintSquare(intx)
40{
41returnx*x;
42}

43}

http://files.cnblogs.com/guozili/CodeTimer.rar

优质内容筛选与推荐>>
1、合并数据集
2、5、SpringMVC
3、Hadoop技术内幕HDFS-笔记4之远程调用
4、Compile boost
5、HttpClient发送get post请求和数据解析


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号