2
当同时发出的请求尝试访问同一图像文件时,读取图像的最佳方式是什么?读取没有独占锁定的文件
基本上我在asp.net中创建了tiff查看器。它显示所有tiff页面的缩略图,点击下面的完整图片。但是当我尝试阅读大的tiff文件(40+ MB)时,出现了一些缩略图和一些拒绝访问的错误。我希望我清楚地解释这个问题。
当同时发出的请求尝试访问同一图像文件时,读取图像的最佳方式是什么?读取没有独占锁定的文件
基本上我在asp.net中创建了tiff查看器。它显示所有tiff页面的缩略图,点击下面的完整图片。但是当我尝试阅读大的tiff文件(40+ MB)时,出现了一些缩略图和一些拒绝访问的错误。我希望我清楚地解释这个问题。
你应该以这种方式打开流:在这种方式打开用于读取和其它进程将能够读取该文件,以及只有一个过程,不是你的
using (Stream s = new FileStream(fullFilePath,
FileMode.Open,
FileAccess.Read,
FileShare.ReadWrite))
{
// here use the stream s
}
,最终可能获取写权。
请看这里以及:How do I open an already opened file with a .net StreamReader?
嗯,我只想读取文件。我不应该使用FileShare.Read而不是FileShare.ReadWrite?顺便说一句,我认为FileStream首先加载整个文件到内存中,然后执行操作,不是吗?只有权限才能提高效率吗? –