C#同步和異步調(diào)用方法實(shí)例
更新時(shí)間:2013年11月18日 12:08:46 作者:
c#同步和異步很簡單,這里給大家提供一個(gè)小例子供大家參考
復(fù)制代碼 代碼如下:
namespace ConsoleTest
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("********同步調(diào)用開始**********");
int result = Add(1,2);
Console.WriteLine("同步調(diào)用完畢,執(zhí)行結(jié)果為:" + result);
Console.WriteLine("********異步調(diào)用開始**********");
SynAdd(1, 2, (r) => {
Console.WriteLine("異步調(diào)用完畢,執(zhí)行結(jié)果為:" + 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>
/// 異步調(diào)用
/// </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;
};//聲明異步方法實(shí)現(xiàn)方式
func.BeginInvoke((ar) =>
{
var result = func.EndInvoke(ar);//調(diào)用完畢執(zhí)行的結(jié)果
callback.Invoke(result);//委托執(zhí)行,回傳結(jié)果值
}, null);
}
}
}
相關(guān)文章
WinForm IP地址輸入框控件實(shí)現(xiàn)
這篇文章主要為大家詳細(xì)介紹了WinForm IP地址輸入框控件的實(shí)現(xiàn)代碼,基于VS2010模擬windows系統(tǒng)自帶IP輸入框,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05C#使用Json.Net進(jìn)行序列化和反序列化及定制化
在本篇文章里小編給大家分享了關(guān)于C#使用Json.Net進(jìn)行序列化和反序列化及定制化的知識點(diǎn)總結(jié),需要的朋友們參考學(xué)習(xí)下。2019-05-05WinForm中comboBox控件數(shù)據(jù)綁定實(shí)現(xiàn)方法
這篇文章主要介紹了WinForm中comboBox控件數(shù)據(jù)綁定實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了WinForm實(shí)現(xiàn)comboBox控件數(shù)據(jù)綁定的常用方法與相關(guān)操作技巧,需要的朋友可以參考下2017-05-05