C# 非同期処理でどのやり方を使えばいいのか知りたい。
参考書のにタスク、スレッドプール、パラレルと async,awaitの4っの同じようなやり方?
のやり方が記載されているのですがつまりどれを使えばいいのでしょうか?
class Program
{
public static async Task<int> method()
{
return await Task<int>.Run(() => {
Thread.Sleep(3000);
Console.WriteLine("finish");
return 1;
});
}
public static void method2(Object t)
{
Console.WriteLine("finish");
}
public static void method3()
{
Console.WriteLine("finish");
}
static void Main(string[] args)
{
//ThreadPool
ThreadPool.QueueUserWorkItem(new WaitCallback(method2),"1");
//task
Task task = Task.Run(new Action(method3));
//Parallel
Parallel.Invoke(new Action(method3));
Task<int> t = method();
Console.WriteLine(t.Result);
Console.ReadKey();
}
}