Я разрабатываю большое приложение WinForm и испытываю некоторые утечки памяти. Одна из проблем заключалась в закрытии формы, которая не освобождала память (я использовал .NET Memory Profiler). Некоторые люди предположили, что обработчики событий должны быть удалены из формы вручную, чтобы предотвратить утечку памяти. Означает ли это, что мне нужно удалить Load, Form_Closing обработчики событий, которые были созданы дизайнером при закрытии формы? Я использую .NET 4.5. Спасибо!Должен ли я удалить Load, Form_Closing обработчики событий, когда форма закрывается, чтобы предотвратить утечку памяти?
0
A
ответ
-1
Нет. Озабоченность обработчиками событий заключается в том, что объект, выполняющий обработчик, ссылается на объект с помощью метода, что означает, что если объект, который запускает событие, будет жить намного дольше, чем объект с чтобы объект с обработчиком не мог быть очищен.
Нет никаких проблем с объектом, уволяющим событие, имеющее гораздо более короткий срок службы, чем объект, обрабатывающий событие, поскольку объект, обрабатывающий событие, не имеет ссылки на объект, запускающий событие.
Смежные вопросы
- 1. Как предотвратить утечку памяти
- 2. Пытается предотвратить утечку памяти
- 3. Когда удалить обработчики событий из объекта?
- 4. Как netty 3.3.1 ChannelLocal освобождается, чтобы предотвратить утечку памяти?
- 5. Выполняет ли обработка событий jQuery утечку памяти?
- 6. Должен ли я удалить обработчик
- 7. Необходимо ли отсоединить pthread, чтобы предотвратить утечку памяти?
- 8. Как я могу предотвратить утечку памяти CompileAssemblyFromSource?
- 9. Ли ThreadLocal переменного должен быть статическими, чтобы представлять утечку памяти
- 10. Должен ли я отказаться от подписки на все обработчики событий?
- 11. Должен ли я обрабатывать обработчики событий единицы измерения
- 12. Когда подключать обработчики событий asp.net
- 13. Does addEventListener вызывает утечку памяти?
- 14. Должен ли я удалить обработчик событий?
- 15. Как предотвратить утечку памяти в кварце
- 16. Как удалить все обработчики событий?
- 17. Почему обработчики событий предотвратить сборщику мусора происходит
- 18. C# - Обработчики событий, хранящиеся в памяти
- 19. Когда подключены пользовательские обработчики событий?
- 20. Нужно ли удалять обработчики событий по директивам, когда $ destroy fire?
- 21. Как предотвратить утечку памяти в pygame.surfarray.pixels2d?
- 22. Удалить/Убить/Удалить UserControl и его обработчики событий
- 23. Можно ли отключить все обработчики событий в Dojo?
- 24. форма не закрывается, когда я нажимаю отправить
- 25. Какую утечку памяти я должен смотреть с данными jQuery()?
- 26. Форма пользователя закрывается, когда закрывается другая книга.
- 27. VB - Форма 2 закрывается автоматически, когда форма 1 закрывается?
- 28. GlassFish Чтобы предотвратить утечку памяти, драйвер JDBC был принудительно незарегистрирован
- 29. QT: как правильно очистить QSettings, чтобы предотвратить утечку памяти?
- 30. Почему я получаю утечку памяти?