首頁 C# Task 與 async await 相關範例用法
文章
Cancel

C# Task 與 async await 相關範例用法

開始

紀錄一下非同步用法

假設有隻個判斷式如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public bool check()
{
  bool result = bExistA1() && bExistA2() && bExistA3();
  return result;
}
public bool bExistA1()
{
  return true;
}
public bool bExistA2()
{
  return true;
}
public bool bExistA2()
{
  return true;
}

可以改成如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Task<bool> t1 = bExistA1();
Task<bool> t2 = bExistA2();
Task.WaitAll(t1, t2);
bool[] results = new bool[] { t1.Result, t2.Result);

public async Task<bool> bExistA1()
{
    /*
    await ...
    */
    return true;
}
public async Task<bool> bExistA2()
{
    /*
    await ...
    */
    return true;
}
public async Task<bool> bExistA3()
{
    /*
    await ...
    */
    return true;
}
本文由作者按照 CC BY 4.0 進行授權