34ºc, Sunny
Tuesday, 18th June, 2019
Modern yazılımlarda kullanıcı deneyimini iyileştirmek ve uygulamaların yanıt verme hızını artırmak için asenkron programlama büyük önem taşır. C#, bu ihtiyaca cevap verebilmek adına .NET 4.5 sürümünden itibaren async
ve await
anahtar kelimeleriyle güçlü bir asenkron yapı sunmaktadır.
Asenkron programlama, zaman alan işlemlerin (dosya okuma, API çağrısı, veritabanı sorgusu gibi) uygulamanın ana iş parçacığını (UI thread) bloke etmeden yürütülmesini sağlar. Böylece kullanıcı arayüzü donmaz, uygulama daha akıcı çalışır.
csharp
KopyalaDüzenle
public async Task<string> VeriGetirAsync()
{
HttpClient client = new HttpClient();
string veri = await client.GetStringAsync("https://api.example.com/data");
return veri;
}
Yukarıdaki örnekte, HTTP isteği yapılırken await
sayesinde işlem arka planda çalışır ve ana akış kesintiye uğramaz. async
ise metodun asenkron çalışacağını bildirir.
C#’ta asenkron yapı, özellikle:
Ancak doğru kullanılmazsa deadlock
, unobserved exception
gibi sorunlar yaratabilir. Bu nedenle asenkron programlama, performans kadar dikkatli planlama ve test gerektirir.
Sonuç olarak, async
ve await
kullanımı C# geliştiricileri için artık bir lüks değil, bir gereklilik haline gelmiştir.
admin