Память VB.NET не выпущена GC

У меня есть эта небольшая часть кода, где я ожидал бы, что GC в определенном месте уничтожит память, вместо этого у меня не хватит памяти.

Это правильное поведение для GC?

Private Sub Form1_Load()
   Dim WasterWrapper as cMyClass
   For MapIndex = 1 To 50
      WasterWrapper = New cMyClass
   Next
End Sub

это класс, который выделяет память

Public Class cMyClass


Private mArry(,) As Double

Sub New()

    Dim i As Integer
    Dim j As Integer

    ReDim mArry(5000, 5000)

    For i = 0 To 5000
        For j = 0 To 5000
            mArry(i, j) = Rnd() * 1000
        Next
    Next

End Sub

Protected Overrides Sub Finalize()

    MsgBox("Finalising the wrapper")
    MyBase.Finalize()

End Sub
End Class
0
nl ja de
Память не освобождается автоматически. GC должен запускаться, что будет, когда он почувствует, что это необходимо. Я заметил, что вы внедрили метод finalize. Это добавит время, необходимое до его освобождения, потому что объект будет помещен в очередь финализации перед освобождением. Вы можете попробовать GC.Collect для тестирования, чтобы заставить GC работать. Но будьте осторожны при использовании этого при нормальных обстоятельствах, это не рекомендуется.
добавлено автор Jason Tyler, источник

1 ответы

После того как я удалил Finalize (), теперь GC может освободить память, как я ожидал.

Спасибо за подсказку.

0
добавлено
DotNetRuChat
DotNetRuChat
2 992 участник(ов)

Чат русскоязычного .NET сообщества http://dotnet.ru/ Вам могут быть интересны: @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @xamarin_russia, @microsoftstackjobs, @uwp_ru Флуд в @dotnettalks

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

pro.net
pro.net
710 участник(ов)

Обсуждение .NET Framework и всего, что с ним связано. Правила: не флудить не по теме, уважать ваших коллег и никакой рекламы (объявления о вакансиях можно согласовать с @AlexFails). Флудилка: @dotnettalks Участник @proDOT

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

.NET Talks: Force Push Masters
.NET Talks: Force Push Masters
490 участник(ов)

Свободный чат .NET разработчиков. Правила: t.me/dotnettalks/56823 Вам могут быть интересны: @dotnetruchat, @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @dotnetgroup, @xamarin_russia, @microsoftstackjobs, @uwp_ru http://combot.org/chat/-1001128250813

.NET Chat Убежище
.NET Chat Убежище
246 участник(ов)

Чат .NET разработчиков под эгидой MSK/SPB .NET Community Group Вам могут быть интересны: @fsharp_chat, @dotnetruchat, @cilchat, @xamarin_russia, @microsoftstackjobs, @dotnetgroup Флуд в @dotnettalks

.NET CIL Chat
.NET CIL Chat
54 участник(ов)

.NET CIL (aka IL aka MSIL)