我们应该默认切换到使用异步I / O吗?
利用异步I / O的优点,它现在很容易编码和编写(使用Await和TAP方法),我想知道,如果我们应该默认使用async,只需要在需要时使用sync来调整性能。
异步I / O释放调用线程,并允许在等待结果时执行其他操作。另一方面,异步I / O比同步慢一点。
为了实施响应式UI,WinRT设计人员认为提供仅异步方法是可以接受的。
内部的AFAIK Windows文件I / O是异步的。天真地看着这个,我不清楚为什么.NET中的异步文件I / O应该比同步慢。
我通常喜欢简单性和健壮性,只在必要时调整性能。在过去,我们默认使用同步,除了调用某些服务以及手机等平台强制执行异步。我们很少使用异步调整。