Утечка памяти xamarin react binding

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

В привязке CountChanged я наблюдаю утечку памяти, но для ItemChanged такой утечки нет. Что мне делать, чтобы это исправить?

private IDisposable _whenActivated;
public MyWindowController(MyViewModel viewModel) : base("MyWindow")
{
    ViewModel = viewModel;
    _whenActivated = this.WhenActivated(disposables =>
    {
        var mainThread = RxApp.MainThreadScheduler;

    //release issue starts
        this.WhenAnyObservable(
            x => x.ViewModel.MyArray.CountChanged)
            .SubscribeOn(mainThread)
            .Subscribe(x => _myListView.ReloadData())
            .DisposeWith(disposables);
    //release issue ends

        // Below is very similar to above, but no leak
        this.WhenAnyObservable(
            x => x.ViewModel.MyArray.ItemChanged)
            .SubscribeOn(mainThread)
            .Subscribe(x => _myListView.ReloadData())
            .DisposeWith(disposables);
    });
}

Есть ли они какие-нибудь другие наблюдатели за CountChanged? Мне этот код кажется прекрасным, я думаю, проблема коренится в другом месте.

Florian Burel 31.10.2018 14:49

@FlorianBurel: Наблюдается в том же классе или во всем проекте?

Anoop Vaidya 31.10.2018 14:51

Я бы сказал, что любой другой класс, который подписывается на конкретное событие CountChanged во всем вашем проекте

Florian Burel 31.10.2018 14:52

@FlorianBurel: Я не проверял, где это еще не наблюдается.

Anoop Vaidya 31.10.2018 15:04
0
4
53
0

Другие вопросы по теме