Trong Scala có một lớp Promise có thể được sử dụng để hoàn thành một tương lai bằng tay. Tôi đang tìm kiếm một thay thế trong C#.Promise tương đương trong C#
Tôi viết một bài kiểm tra và tôi muốn nó trông nó tương tự như sau:
// var MyResult has a field `Header`
var promise = new Promise<MyResult>;
handlerMyEventsWithHandler(msg =>
promise.Complete(msg);
);
// Wait for 2 seconds
var myResult = promise.Future.Await(2000);
Assert.Equals("my header", myResult.Header);
Tôi hiểu rằng điều này có lẽ không phải là mô hình phù hợp với C#, nhưng tôi không thể tìm ra một cách hợp lý để đạt được điều tương tự ngay cả với mô hình hơi khác.
CHỈNH SỬA: xin lưu ý rằng async
/await
không giúp ích gì ở đây vì tôi không có Nhiệm vụ để chờ đợi! Tôi chỉ có quyền truy cập vào trình xử lý sẽ chạy trên một chuỗi khác.
Có thể sao chép [cách và thời điểm sử dụng \ 'async \ 'và \' await \'] (http://stackoverflow.com/questions/14455293/how-and-when-to-use-async-and-await) – Stijn
Tôi nghĩ bạn đang tìm kiếm 'Task'. –