6 Temmuz 2011, ÇARŞAMBA
Nasıl bir alıcı ya da ayarlayıcı gelen zaman uyumsuz yöntem çağrısı için?
C alıcı ya da ayarlayıcı gelen zaman uyumsuz yöntem çağrısı için en zarif yolu olurdu ne#?
Burada kendimi açıklamak için sözde kod.
async Task<IEnumerable> MyAsyncMethod()
{
return await DoSomethingAsync();
}
public IEnumerable MyList
{
get
{
//call MyAsyncMethod() here
}
}
CEVAP
6 Temmuz 2011, ÇARŞAMBA
Zaman uyumsuz özelliği desteği, zaman uyumsuz yöntem sadece yok beri çağırmalarına, yapamazsın. Gibi, iki seçenek vardır, hem de CTP yöntemleri zaman uyumsuz gerçeğini yararlanarak gerçekten sadece Task<T>
Task
döndüren bir yöntem vardır:
// Make the property return a Task<T>
public Task<IEnumerable> MyList
{
get
{
// Just call the method
return MyAsyncMethod();
}
}
Ya da:
// Make the property blocking
public IEnumerable MyList
{
get
{
// Block via .Result
return MyAsyncMethod().Result;
}
}
Bunu Paylaş:
C senkron yöntemi zaman uyumsuz yöntem...
Güvenli bir şekilde C zaman uyumsuz yö...
Nasıl bitirmek için zaman uyumsuz olar...
Nasıl Node.js zaman uyumsuz fonksiyonl...
Zaman uyumsuz gelen HttpClient .4.5 yo...