Web hizmetine eşzamansız çağrı yapan bir yöntem kullanıyorum. Ben senkron bir alternatif sunmak istiyoruzAsync yönteminin sonucu
public static async Task<ReturnResultClass> GetBasicResponseAsync()
{
var r = await SomeClass.StartAsyncOp();
return await OtherClass.ProcessAsync(r);
}
Ve: Bunun gibi bir şey Result
çağrı
public static ReturnResultClass GetBasicResponse()
{
return GetBasicResponseAsync().Result;
}
Ama blokları. Çünkü async işlemleri ile aynı iş parçacığı üzerinde çağrılır. Sonuçları eşzamanlı olarak nasıl alabilirim?
Teşekkürler! Eğer bir GUI uygulamasında, bir async
yöntemin devamı parçası (ler) varsayılan olarak UI iş parçacığı üzerinde çalıştırır eğer
Teşekkürler! 'ConfigureAwait' lib'imin async istemcilerini etkiler mi? Async operasyonları uyumsuz kalır mı, yoksa tüm müşteriler için diğer iş parçacığı üzerinde çalıştırılacak mı? – gor
Evet, aynı zamanda istemcileri de etkileyecek, ancak bir şekilde tamamlanmalı. Async işlemleri uyumsuz kalır, sadece 'ConfigureAwait()' işlevini kullanan kodun devam eden kısmı, UI iş parçacığı üzerinde yürütülmez. Ancak, UI iş parçacığı üzerinde başlayan yöntemlerde herhangi bir uyumsuz kodu orada kalır ('ConfigureAwait()' işlevini burada kullanmazsanız). – svick