Просто мысль, которая возникла, когда я писал метод извлечения почтовых индексов.
У меня есть оператор using для метода OpenRead, поэтому ресурсы должны быть удалены после выполнения оператора, хотя все мы знаем.Однако во время написания кода я отлаживал и пару раз останавливал отладку, чтобы изменить некоторый код в операторе using.Однако, когда я прекратил отладку, оператор using не прошел полностью, поэтому технически не удалил / не закрыл никаких ресурсов. Делает ли Visual Studio это автоматически, когда вы прекращаете отладку?
Кратко огляделсяно не могу найти никаких подсказок.Я использую Visual Studio Community 2017 (версия 15.9.10) и .NET Framework (версия 4.7.03056)
public void Decompress_SaveToFile(string zipFilePath, string directoryPath)
{
using (ZipArchive archive = ZipFile.OpenRead(zipFilePath))
{
foreach(ZipArchiveEntry entry in archive.Entries)
{
if(File.Exists(directoryPath))
{
Console.WriteLine("Decompressed file already exists.");
}
else
{
entry.ExtractToFile(directoryPath);
}
}
}
}
Я ожидаю, что он закроет все потоки / ресурсы, но просто любопытно.