タスクベースの非同期パターンが推奨されるルートになっているため(MSDN @ hereおよびhereにhello world
よる)、以下の単純なコードをタスクベースの非同期パターンに変換するにはどうすればよいですか?
私は何も知らずTasks
、ワーカーへの入力とワーカーからの出力、および「メイン」からの呼び出しをデモしようとしたと仮定します。
class Program
{
static void Main(string[] args)
{
Worker wk = new Worker();
string result = wk.DoWork(1000);
Console.WriteLine(result);
Console.WriteLine("Main says, Hello World!");
Console.ReadLine();
}
}
class Worker
{
public string DoWork(int delay)
{
Console.WriteLine("Worker says, working ...");
Thread.Sleep(delay); // represents the 100ms+ workload
return "Worker says, I'm done! Hello World!";
}
}