【发布时间】:2012-03-28 21:50:22
【问题描述】:
我读过the article on copying streams asynchronously。 我注意到只有一个缓冲区用于读/写。
使用异步调用进行流复制对我有什么好处?
由于只有一个缓冲区,您的异步解决方案在运行时似乎非常同步。 写入必须等待读取,而下一次读取必须等到缓冲区被写入。
一些想法:
我见过使用多个缓冲区的变体。 恕我直言,这只会使事情变得更复杂,使用更多内存并推迟问题。 它允许在一定程度上并行进行多次读取。
对于文件,我可以想象一个更轻松的写入解决方案:读取时写入一个块,并在读取所有文件时修复顺序。 (文件系统必须支持)。
我阅读这篇文章是因为我正在使用 .NET 3.5,但还不能使用 .NET 4 或 4.5。
(Microsoft dot com adres 的 netqa 反弹)
【问题讨论】:
标签: .net file-io asynchronous streaming