.net 如何处理ValueTask<;T>;在F#中?
因此,显然.NET全新的.net 如何处理ValueTask<;T>;在F#中?,.net,asynchronous,f#,async-await,c#-to-f#,.net,Asynchronous,F#,Async Await,C# To F#,因此,显然.NET全新的ValueTask是Task的精简版。这很酷,但如果之前我必须使用Async.AwaitTask将我的F#Async工作流与Task集成,那么现在我应该如何处理ValueTask?在实现之前(感谢Aaron),可以使用ValueTask的方法,现在可以使用Async.AwaitTask,作为最简单的解决方案。我的OSS项目可以自然、隐式地处理任务和值任务与F#异步异步工作流上的类型相同: let asyncTest=async{ 使用ms=newmemoryStream(
ValueTask
是Task
的精简版。这很酷,但如果之前我必须使用Async.AwaitTask
将我的F#Async工作流与Task集成,那么现在我应该如何处理ValueTask?在实现之前(感谢Aaron),可以使用ValueTask的方法,现在可以使用Async.AwaitTask
,作为最简单的解决方案。我的OSS项目可以自然、隐式地处理任务
和值任务
与F#异步
异步工作流上的类型相同:
let asyncTest=async{
使用ms=newmemoryStream()
//FusionTasks直接解释F#异步工作流块中的任务类。
do!ms.WriteAsync(数据,0,数据.长度)
ms位置是否应等于数据2.长度
}
有一个RFC,它通过一个waitValueTask
功能向F#添加对此的支持。您可以使用更原始的Async.FromContinuations
,非常轻松地实现Async.waitTask
——我想您也可以对ValueTask执行同样的操作