Куда в таком простом коде утекает память? - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Не пойму куда девается память в этом простом коде:
Листинг программы
  1. For Each dir_name As String In Directory.GetDirectories(Application.StartupPath())
  2. For Each file_name As String In Directory.GetFiles(dir_name)
  3. If file_name.Substring(file_name.Length - 3) = "tif" Then
  4. imgGFC1 = New Bitmap(file_name)
  5. End If
  6. If Dir("1" & file_name) <> "" Then ' наличие этого условия пожирает память
  7. ' не важно какой здесь код, наличие этого условия пожирает память
  8. End If
  9. GC.Collect() ' Вызов сборщика мусора, никакого проку нет
  10. Next
  11. Next
Цикл перебирает изображения в папках, большие, много, сколько угодно. Но как только появляется второе условие так сразу память мигом заканчивается. Как так? Вроде второе условие не имеет отношение к проблеме, в чем дело?

Решение задачи: «Куда в таком простом коде утекает память?»

textual
Листинг программы
  1. If Not My.Computer.FileSystem.FileExists(FileIO.FileSystem.GetFileInfo(TifFiles).DirectoryName & "1" & FileIO.FileSystem.GetName(TifFiles))

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.067 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы