Aynı işi yapan TPL kullanımı ile ilgili 3 rutin gördüm; İşte kod:
public static void Main()
{
Thread.CurrentThread.Name = "Main";
// Create a task and supply a user delegate by using a lambda expression.
Task taskA = new Task( () => Console.WriteLine("Hello from taskA."));
// Start the task.
taskA.Start();
// Output a message from the calling thread.
Console.WriteLine("Hello from thread '{0}'.",
Thread.CurrentThread.Name);
taskA.Wait();
}
public static void Main()
{
Thread.CurrentThread.Name = "Main";
// Define and run the task.
Task taskA = Task.Run( () => Console.WriteLine("Hello from taskA."));
// Output a message from the calling thread.
Console.WriteLine("Hello from thread '{0}'.",
Thread.CurrentThread.Name);
taskA.Wait();
}
public static void Main()
{
Thread.CurrentThread.Name = "Main";
// Better: Create and start the task in one operation.
Task taskA = Task.Factory.StartNew(() => Console.WriteLine("Hello from taskA."));
// Output a message from the calling thread.
Console.WriteLine("Hello from thread '{0}'.",
Thread.CurrentThread.Name);
taskA.Wait();
}
Sadece MS aynı VUK içinde çünkü onlar tüm çalışmaları işlerini çalıştırmak için 3 farklı yöntem sunar neden anlamıyorum: Task.Start(), Task.Run()ve Task.Factory.StartNew().
Beni, edilir Söyle Task.Start(), Task.Run()ve Task.Factory.StartNew()hepsi aynı amaçla kullanılabilir veya farklı bir öneme var?
Ne zaman Task.Start(), ne zaman Task.Run()ve ne zaman kullanılmalı Task.Factory.StartNew()?
Lütfen senaryolara göre gerçek kullanımlarını örneklerle çok ayrıntılı olarak anlamama yardımcı olun, teşekkürler.
Task.Run- belki bu soruya cevap olacak;)