Поскольку используемые вами потоки реализуют интерфейс IDisposable
, вам следует Dispose()
/ Close()
ваших классов или использовать оператор using
, чтобы сделать это автоматически:
using (FileStream inFile = new FileStream(inFileName, FileMode.Open))
using (FileStream outFile = new FileStream(outFileName, FileMode.Create))
using (GZipStream compStream = new GZipStream(outFile, CompressionMode.Compress)) {
int theByte = inFile.ReadByte();
// ... Rest of your code
}
Это примерно означает:
try {
FileStream inFile = new FileStream(inFileName, FileMode.Open);
FileStream outFile = new FileStream(outFileName, FileMode.Create);
GZipStream compStream = new GZipStream(outFile, CompressionMode.Compress);
int theByte = inFile.ReadByte();
// ... Rest of your code
} finally {
if (inFile != null) inFile.Dispose();
if (outFile != null) outFile.Dispose();
if (compStream != null) compStream.Dispose();
}