"Системная нехватка памяти" при попытке загрузить изображения в datagridview (VB Net)
Мне нужно загрузить около 70-100 изображений в datagridview (DatagridviewImageColumn), и я могу это сделать, но загружаю только 33, а затем я получаю: "Исключение системы из памяти" Memoria insficiente.
Изображения имеют высокое разрешение (1600х2700). Мой код:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
For Each Documento As String In My.Computer.FileSystem.GetFiles(FolderBrowserDialog1.SelectedPath, FileIO.SearchOption.SearchTopLevelOnly)
*Dim imagen As Image = Image.FromFile(Documento)
DataGridView1.Rows(a).Cells(0).value = imagen
a = a + 1
Next
End If
Ошибка указывает на строку с (*)
Я также пытался с задержками (Threading.Thread.Sleep(3500)) и через таймер с интервалом 3500, но я все еще получаю ту же ошибку.
Что я могу сделать?
Благодарю.
1 ответ
Я нашел ответ.
Вместо того, чтобы загружать изображения в datagridview, я использовал только их имена, а для их обработки, используя FOR, я использовал Timer и эти строки:
GC.Collect()
GC.WaitForPendingFinalizers()
В конце каждой итерации и это решает проблему.