我正在调用一个 httprequest,它在响应流中返回一个 pdf 文件。这适用于较小的 pdf,但文件不是大约 25-30MB,它返回内存不足异常。
MemoryStream memStream = new MemoryStream();
byte[] buffer = new byte[2048];
int bytesRead = 0;
do
{
bytesRead = _ResponseStream.Read(buffer, 0, buffer.Length);
memStream.Write(buffer, 0, bytesRead);
} while (bytesRead != 0);
_ResponseStream.Close();
_ResponseStream.Dispose();
_ResponseStream = null;
if (memStream.Length > 0)
return memStream;
else return null;
机器规格为四核 3.0GZ,4GB RAM(物理盒)。PDF 有可能达到 60MB 的大小。多个用户可以同时下载。这将如何影响它?将响应流直接带到 FileStream 会更好吗?有没有这样做的最佳实践方法?