5
私は、このサンプルコードがあります。それは明らかにt1
タスクからResult
を返す最後のタスク<>(継続)の結果を取得しますか?
Task<int> t1= new Task<int>(()=>1);
t1.ContinueWith(r=>1+r.Result).ContinueWith(r=>1+r.Result);
t1.Start();
Console.Write(t1.Result); //1
を。
(1である)しかし、どのように最後継続タスクからResult
が得ることができる(それがあるべき3
{1 + 1 + 1})
なぜ私はcontinueWithを書きますか? –
あなたは何を意味するのかよく分かりません。明確にできますか?この場合、TPLはタスクの継続が課題でもあるという意味で「一貫性」があります。 – Ani
私はcontinuewithがタスクを返すことを知っています。 Q:それはかなりシンプルだと思います:t1は最初のタスクだけをリファインします。後でこのタスクは別のタスクで追加されていますが、私は外部からアクセスできません。あなたの答えでは、t2は最後の継続したタスクを参照するので、値を取得できます。あれは正しいですか ? –