OpenMCDF
OpenMCDF copied to clipboard
Large memory consumption
Hi
I tried to unpack a large msdf file (about 500 Mb) and got large memory consumption (about 6-8 Gb).
I think what this because a new byte[]
operation take place many times.
Can you made some changes like this: Sector.cs - add function
public void GetData(byte[] buffer, int offset, int length)
{
if (IsStreamed)
{
stream.Seek((long)size + (long)this.id * (long)size, SeekOrigin.Begin);
stream.Read(buffer, offset, Math.Min(size, length));
}
}
And use it at the StreamView.cs (function int Read(byte[] buffer, int offset, int count)
) instead of sectorChain[secIndex].GetData()
function
Thanks