type
Post
status
Published
date
Sep 6, 2023
slug
c-sharp-async-task-return-value
summary
C#异步编程-13 Task 的返回值
tags
C#
CS
category
学习记录
icon
password
Property
Aug 9, 2024 11:58 AM
Task 的返回值
Task有一个泛型子类叫做Task<TResult>,它允许发出一个返回值
使用Func<TResult>委托或兼容的Lambda表达式来调用Task.Run就可以得到Task<TResult>
随后,可以用过Result属性来获得返回的结果
- 如果这个task还没有完成操作,访问Result属性会阻塞该线程直到该task完成操作
- (例子tresult,prime)
Task<TResult>可以看做是一种所谓的“未来/许诺”(future/promise),在它里面包裹着一个Result,在稍后的时候就会变得可用。
在CTP版本的时候,Task<TResult>实际上叫做Future<TResult>
- 作者:Kitety
- 链接:https://www.kitety.com/article/c-sharp-async-task-return-value
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
相关文章


.png?table=block&id=fa81f9ab-c0da-4f4e-a935-0567380c36d0&t=fa81f9ab-c0da-4f4e-a935-0567380c36d0&width=1080&cache=v2)
.png?table=block&id=55df38cd-a361-41ee-a75d-c17615e78d6b&t=55df38cd-a361-41ee-a75d-c17615e78d6b&width=1080&cache=v2)
_(1).jpg?table=block&id=a716c7ee-7105-4a3f-8133-a15129086419&t=a716c7ee-7105-4a3f-8133-a15129086419&width=1080&cache=v2)
.jpg?table=block&id=2e9784d9-1d6e-44fc-9106-f0c576ddcb8f&t=2e9784d9-1d6e-44fc-9106-f0c576ddcb8f&width=1080&cache=v2)

.png?table=block&id=c0772cdb-ee08-49f4-b2f3-c804586bb769&t=c0772cdb-ee08-49f4-b2f3-c804586bb769&width=1080&cache=v2)

.png?table=block&id=b43ea4ae-a57d-4962-80ba-12280979702b&t=b43ea4ae-a57d-4962-80ba-12280979702b&width=1080&cache=v2)
