在尝试确定我是否正在使用Stream诸如ReadAsync并且CopyToAsync正确的方法时,我遇到了以下问题:
C#4.5文件读取性能sync vs async
在这个问题中,我在接受的答案中阅读了以下内容:
最值得注意的是,您的"异步"测试不使用异步I/O; 对于文件流,您必须将它们显式地打开为异步,否则您只是在后台线程上执行同步操作.
在他的异步IO代码中,他使用以下命令打开FileStream'异步':
var file = new FileStream(filename, FileMode.Open, FileAccess.Read, FileShare.Read, 4096, true)
Run Code Online (Sandbox Code Playgroud)
所以我想知道你是否打算使用诸如CopyToAsync是否应该FileStream如上所示打开底层的方法?而不是像下面这样做一些简单的事情:
File.Open(filename, FileMode.Open)
Run Code Online (Sandbox Code Playgroud)
这是实际文档中的示例如何CopyToAsync演示打开底层FileStream:https:
//msdn.microsoft.com/en-us/library/hh159084(v = vs.110).aspx
如果底层FileStream打开的方式无关紧要,那么构造函数的useAsync参数是FileStream做什么的?