FileHelpers + async-await?

时间:2015-06-24 08:29:54

标签: .net asynchronous filehelpers

我正在考虑在文件读/写库中使用FileHelpers。这个库将使用async-await和Tasks来高度并行和并发。

据我了解,FileHelperAsyncEngine在内部是异步的,但async-await没有* Async方法,因此每个文件都会占用调用线程,直到加载文件为止。

虽然显然可以例如Task.Run(…FileHelperAsyncEngine …),当尝试以这种方式读取数千个小文件(尽可能并行)时,我可能会遇到线程创建性能瓶颈,因为线程池每0.5只旋转一次额外的线程(即超过#cores)秒,这有很大的开销,并且(在我的上下文中)太慢了。

理想情况下,我可以

await ReadNextsAsync()

,或者至少使用APM模式:https://msdn.microsoft.com/en-us/library/dd997423%28v=vs.110%29.aspx

  • 是否有计划为FileHelpers添加async-await支持?

  • 您认为在FileHelpers中使用APM模式有什么好方法吗?

谢谢! 克里斯蒂安

0 个答案:

没有答案