質問編集履歴
1
説明の修正
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,24 +1,24 @@
|
|
1
|
-
|
1
|
+
t1も、t2も同じタスクですが、t2は処理が止まったままConsole.WriteLine("goal");まで到達できません。
|
2
|
+
t1と、t2では何が違うのでしょうか?
|
2
3
|
|
3
|
-
どちらも同じTaskですが、
|
4
|
-
どうしてt2は駄目で、t1は問題なく処理されるのでしょうか?
|
5
|
-
|
6
4
|
```ここに言語を入力
|
7
5
|
using System;
|
8
6
|
using System.Threading;
|
9
7
|
using System.Threading.Tasks;
|
10
8
|
|
11
9
|
class Program {
|
12
|
-
static
|
10
|
+
static void Main(string[] args) {
|
13
|
-
|
11
|
+
Async();
|
12
|
+
Console.Read();
|
13
|
+
}
|
14
|
+
static async Task Async() {
|
14
|
-
Task t1 = Task.Delay(
|
15
|
+
Task t1 = Task.Delay( 999);
|
15
|
-
Task t2 = new Task(
|
16
|
+
Task t2 = new Task(() => Thread.Sleep( 999));
|
16
|
-
|
17
|
+
|
17
18
|
await t1; //OK
|
18
|
-
|
19
|
+
await t2; //NG
|
20
|
+
Console.WriteLine("goal");
|
21
|
+
}
|
19
22
|
|
20
|
-
Console.WriteLine("main");
|
21
|
-
Console.Read();
|
22
|
-
}
|
23
23
|
}
|
24
24
|
```
|