tôi có phương pháp này mà Bắt đầu một nhiệm vụ và trả về công tác cahined cuối cùng để có được kết quả:Làm cách nào tôi có thể bắt đầu một cá thể tác vụ tiếp tục?
public Task<double> GetTask()
{
return Task.Factory.StartNew((() => 10))
.ContinueWith(i =>
{
return i.Result + 2;
})
.ContinueWith(i =>
{
return (double)i.Result;
});
}
Tôi muốn có cùng một phương pháp trở về cùng một công việc nhưng không bắt đầu nó tự động với Task.Factory .Bắt đầuMới như sau:
public Task<double> GetTask2()
{
return new Task<int>((() => 10))
.ContinueWith(i =>
{
return i.Result + 2;
})
.ContinueWith(i =>
{
return (double)i.Result;
});
}
Dù sao tôi không thể tìm cách bắt đầu tác vụ được trả về bởi GetTask2 và nhận kết quả. Làm thế nào tôi có thể bắt đầu nó và nhận được kết quả?
Điều này sẽ không hoạt động. Bạn cần phải bắt đầu nhiệm vụ ban đầu, ban đầu. Không phải là cuối cùng của chuỗi. – usr
Tại sao? Đó không phải là câu hỏi. Chỉ cần khởi tạo tác vụ từ phương thức. Sau đó bắt đầu nó. Đơn giản. – MoonKnight
Bạn đang gọi bắt đầu với nhiệm vụ tiếp tục. Bạn không thể bắt đầu nhiệm vụ tiếp tục. Nó sẽ tự động bắt đầu khi nó được hoàn thành. Bạn không thể ép buộc nó bắt đầu. – usr