Tôi muốn thực hiện một awaitable mảng bằng cách thực hiện một phương pháp khuyến nôngđang chờ mảng; bằng cách thực hiện phương pháp mở rộng cho mảng
public static IAwaitable GetAwaiter(this mytype[] t)
{
return t.First().GetAwaiter();
}
nhưng mặc dù IntelliSense nói "(awaitable) mytype[]
", trình biên dịch mang lại cho tôi một lỗi khi sử dụng
mytype[] t = new mytype[] { new mytype(), new mytype() };
await t;
Cuộc gọi chờ đợi trên một đối tượng duy nhất của mytype hoạt động tốt. Tại sao vậy? Tôi có làm điều gì sai? Cảm ơn bạn đã giúp đỡ.
đang chờ được sử dụng trên các cuộc gọi không đồng bộ, tại sao bạn sử dụng nó với các loại? – prthrokz
Bạn đang gặp phải lỗi gì? –
BTW: Sử dụng ['TaskCompletionSource'] (http://msdn.microsoft.com/en-us/library/dd449174.aspx) có vẻ tốt hơn là triển khai một lớp học đang chờ bạn: http://stackoverflow.com/ Câu hỏi/6731815/asyncctp-create-a-class-that-is-iawaitable –