最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于使用BeginInvoke,EndInvoke異步調(diào)用委托的實(shí)現(xiàn)代碼

 更新時(shí)間:2013年05月18日 11:52:31   作者:  
本篇文章是對(duì)使用BeginInvoke,EndInvoke異步調(diào)用委托的實(shí)現(xiàn)代碼進(jìn)行了分析介紹,需要的朋友參考下
復(fù)制代碼 代碼如下:

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

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Main ThreadId = " + Thread.CurrentThread.ManagedThreadId);
            //給委托賦值
            Func<long, long> delegateMethod = new Func<long, long>(CalcSum);
            //異步執(zhí)行委托,這里把委托本身作為asyncState對(duì)象傳進(jìn)去,在回調(diào)函數(shù)中需要使用委托的EndInvoke來獲得結(jié)果
            delegateMethod.BeginInvoke(200, DoneCallback, delegateMethod);
            //異步執(zhí)行委托,拋出異常
            delegateMethod.BeginInvoke(10000000000, DoneCallback, delegateMethod);
            Console.ReadLine();
        }

        //委托回調(diào)函數(shù)
        static void DoneCallback(IAsyncResult asyncResult)
        {
            //到這兒委托已經(jīng)在異步線程中執(zhí)行完畢
            Console.WriteLine("DoneCallback ThreadId = " + Thread.CurrentThread.ManagedThreadId);

            Func<long, long> method = (Func<long, long>)asyncResult.AsyncState;
            //委托執(zhí)行的異常會(huì)在EndInvoke時(shí)拋出來
            try {
                //使用BeginInvoke時(shí)傳入委托的EndInvoke獲得計(jì)算結(jié)果,這時(shí)候計(jì)算結(jié)果已經(jīng)出來了,有異常的話也在這兒拋出來
                long sum = method.EndInvoke(asyncResult);
                Console.WriteLine("sum = {0}",sum);
            }
            catch (OverflowException)
            {
                Console.WriteLine("運(yùn)算溢出了");
            }
        }

        //委托方法
        static long CalcSum(long topLimit)
        {
            //委托在另一個(gè)線程中開始執(zhí)行
            Console.WriteLine("Calc ThreadId = " + Thread.CurrentThread.ManagedThreadId);
            checked
            {
                long result = 0;
                for (long i = 0; i < topLimit; i++)
                {
                    result += i;
                }
                return result;
            }
        }
    }

}

相關(guān)文章

  • 詳解二維碼生成工廠

    詳解二維碼生成工廠

    本篇文章主要分享的是3個(gè)免費(fèi)的二維碼接口的對(duì)接代碼和測(cè)試得出的注意點(diǎn)及區(qū)別。具有很好的參考價(jià)值,需要的朋友一起來看下吧
    2016-12-12
  • C#編程實(shí)現(xiàn)簡(jiǎn)易圖片瀏覽器的方法

    C#編程實(shí)現(xiàn)簡(jiǎn)易圖片瀏覽器的方法

    這篇文章主要介紹了C#編程實(shí)現(xiàn)簡(jiǎn)易圖片瀏覽器的方法,涉及C#基于WinForm操作圖片實(shí)現(xiàn)預(yù)覽功能的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-11-11
  • C#實(shí)現(xiàn)XML序列化與反序列化

    C#實(shí)現(xiàn)XML序列化與反序列化

    這篇文章介紹了C#實(shí)現(xiàn)XML序列化與反序列化的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • C#面向?qū)ο蟮?3種設(shè)計(jì)模式介紹

    C#面向?qū)ο蟮?3種設(shè)計(jì)模式介紹

    這篇文章介紹了C#面向?qū)ο蟮?3種設(shè)計(jì)模式,對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-02-02
  • C#中獲取文件大小問題

    C#中獲取文件大小問題

    這篇文章主要介紹了C#中獲取文件大小問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • C#緩存之SqlCacheDependency用法實(shí)例總結(jié)

    C#緩存之SqlCacheDependency用法實(shí)例總結(jié)

    這篇文章主要介紹了C#緩存之SqlCacheDependency用法,在C#程序設(shè)計(jì)中有一定的實(shí)用價(jià)值,需要的朋友可以參考下
    2014-08-08
  • C# PictureBox圖片控件實(shí)現(xiàn)圖片交換

    C# PictureBox圖片控件實(shí)現(xiàn)圖片交換

    在c#中可以使用PictureBox控件來呈現(xiàn)圖像,本文主要介紹了C# PictureBox實(shí)現(xiàn)圖片交換,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C#使用MD5算法對(duì)密碼進(jìn)行加密的示例代碼

    C#使用MD5算法對(duì)密碼進(jìn)行加密的示例代碼

    MD5(Message Digest Algorithm 5)是一種被廣泛使用的“消息-摘要算法”,“消息-摘要算法”實(shí)際上就是一個(gè)單項(xiàng)散列函數(shù),數(shù)據(jù)塊經(jīng)過單向散列函數(shù)得到一個(gè)固定長(zhǎng)度的散列值,本文給大家介紹了C#使用MD5算法對(duì)密碼進(jìn)行加密,需要的朋友可以參考下
    2024-03-03
  • Unity AssetBundle打包工具示例詳解

    Unity AssetBundle打包工具示例詳解

    這篇文章主要介紹了Unity AssetBundle打包工具,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-10-10
  • C#的FileInfo類實(shí)現(xiàn)文件操作實(shí)例

    C#的FileInfo類實(shí)現(xiàn)文件操作實(shí)例

    這篇文章主要介紹了C#的FileInfo類實(shí)現(xiàn)文件操作實(shí)例,比較實(shí)用的功能,需要的朋友可以參考下
    2014-07-07

最新評(píng)論

中方县| 张家港市| 图木舒克市| 容城县| 化德县| 土默特右旗| 松滋市| 太康县| 五寨县| 宜良县| 徐州市| 云浮市| 临漳县| 安达市| 华宁县| 民和| 光山县| 杂多县| 桐城市| 南岸区| 昭苏县| 平湖市| 泰和县| 新蔡县| 江北区| 安龙县| 永德县| 五指山市| 股票| 夏邑县| 四子王旗| 郸城县| 溆浦县| 普格县| 叙永县| 岳阳市| 龙口市| 苏州市| 台北市| 海丰县| 安庆市|