В дополнение к ответам, которые вы уже получили, вы должны быть осторожны в более реалистичных примерах.
Если в вашем приложении есть главное окно, которое сохраняется до тех пор, пока выполняется программа, и вы часто создаете «недолговечные» объекты, которые привязывают их методы к событиям в главном окне, тогда вы должны исключить объекты из этих событий, когда они вам больше не нужны, потому что иначе эти объекты вообще не будут «недолговечными» - они будут существовать до тех пор, пока основное окно не будет закрыто, то есть до тех пор, пока пользователь не закроет приложение. Эффективный результат будет эквивалентен утечке памяти.
Может помочь, если вы реализуете класс недолговечного объекта, реализующий IDisposable
, так что вы можете исключить события из Dispose
, а затем убедиться, что вы вызываете dispose, когда хотите сбросить объект.