Re[15]: Nested functions
От: Qbit86 Кипр
Дата: 22.05.15 15:13
Оценка: +1
Здравствуйте, Tesh, Вы писали:

T>Я бы вообще не использовал события из-за опасности утечки памяти (если забыли отписаться)


Чтоб не забыть отписаться потом, мы планируем отписку сразу после подписки:
_subscriptionDisposables.Add(/* Unsubscribe */);

Это помимо прочего позволяет не удерживать явную ссылку на подписчика.

И как раз из-за невозможности отписки и опасности утечки памяти мы не можем использовать неименованные лямбды:
subject.SomeEvent += (sender, e) => { /* Captures some variables. */ };
subject.SomeEvent -= ???


T>но если и использовать, то зачем объединять код, обрабатывающий события с кодом, выполняющим подписку?


А зачем их разносить, если подписка осуществляется только в одном месте и код обработчика нежелательно вытаскивать наружу?
Глаза у меня добрые, но рубашка — смирительная!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.