Merhaba, bugün öğrendiğim bir yordamı burada küçük bir örnek ile paylaşmak istiyorum.
Örneğe geçmeden önce işin mantığını kavramak adına bulinkteki makaleyi mutlaka okumanızı öneriyorum.
Makalede özetle anlatılmak istenen: A işleminin, B işleminin sonucu ile işi yoksa A işlemi B işlemini neden beklesin? A işlemi vakit kaybetmeden işlerine devam edebilir.
Senaryo şöyle; hali hazırda metodunuz işlemine devam ederken sizin aralara log satırları eklemeniz lazım ama loglama işlemini hali hazırda ki metodunuz beklememeli, normal hayatına devam etmeli.
static void Main(string[] args)
{
Logla();
BirseylerYap();
Console.ReadKey();
}
public static void BirseylerYap()
{
Console.WriteLine("Diğer işlemlere devam ediliyor...");
}
public static void Logla()
{
Console.WriteLine("Loglamaya başlandı.");
Task task = Task.Factory.StartNew(() =>
{
//Asenkron çalışalacak kodlar buraya yazılacak.
Thread.Sleep(3000);
Console.WriteLine("Loglama tamamlandı.");
});
}
Kaynaklar
https://medium.com/@atarikguney/asenkron-asynchronous-programlama-nedir-296230121f9d
https://enginpolat.com/tpl-task-parallel-library-task-class/
https://seesharpdili.blogspot.com/2015/02/task-baslatma.html
Top comments (0)