При создании класса шаблона и добавлении события нужно ли его удалять? - PullRequest
0 голосов
/ 07 августа 2020

Вот код, который у меня есть:

namespace X.Templates
{
    public class ABCTemplate : Grid
    {

        public ABCTemplate()
        {
            TapGestureRecognizer tap = new TapGestureRecognizer() { NumberOfTapsRequired = 1 };
            tap.Tapped += Tap_Tapped;
        }

        private void Tap_Tapped(object sender, EventArgs e)
        {
            //
        }
    }
}

Должен ли я что-нибудь сделать, чтобы удалить Tap_Tapped, или он просто go исчезнет, ​​когда ABCTemplate больше не будет использоваться?

1 Ответ

1 голос
/ 10 августа 2020

нужно ли его удалять?

EventHandler - это управляемые ресурсы, которые будут неявно очищены сборщиком мусора ( G C). Вам не нужно писать код для явного освобождения таких ресурсов. страницу или удалите со страницы).

Конечно, иногда мы будем видеть код вроде

tap.Tapped -= Tap_Tapped;

Это связано со стандартами кода. И если мы вызовем неправильный код, возможно, событие перестанет работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...