Ладно, так что я обновляет VB6 приложение для VB.NET, и я не уверен в том, как модернизировать class_terminate компонент класса контейнера Я здание:Обновление VB6 контейнера класса в VB.NET
Private Sub class_terminate()
If Not (colUserMappings Is Nothing) Then
Set colUserMappings = Nothing
End If
End Sub
Проблема заключается в том, что эквивалент этого NET .Finalize
оставляет некоторые потенциальные ошибки времени выполнения, поскольку установка конечной ссылки на контейнер не приводит к уничтожению контейнера, поскольку языки .NET не имеют детерминированного завершения.
В этом случае, как бы я модернизировал класс коллекций таким образом, что вызов его функции завершения или завершения фактически привел бы к уничтожению контейнера в конце? Есть ли хороший способ для этого?
Вам не обязательно это делать. Сборщик мусора сделает для вас работу. – vcsjones
Зачем вам нужно уничтожить класс контейнера, прежде чем все ссылки на него будут удалены? – RBarryYoung
Итак, я могу просто полностью отказаться от класса class_terminate() полностью для новой версии? –