Страница 1 из 1

Построитель отчета в отдельном домене

Добавлено: 02 мар 2015, 07:51
Odon01
Здравствуйте.
Столкнулся с утечками памяти в контроле StiWpfDesignerControl. Не выгружается после закрытия формы.
Дерево памяти.png
Дерево памяти.png (35.35 КБ) 2078 просмотров
Возможно ли решить вопрос с утечками памяти. Или подскажите как организовать работу с этим контролом в отдельном домене, с последующей выгрузкой домена из памяти после закрытия формы. И если это возможно, как правильно это сделать. У меня не получается. Когда создаю отчет в отдельном домене в момент:
DesignerControl.Report = otherAppDomain.Report;
внутри DesignerControl идут внутренние исключения.

Что я делаю неправильно? Как решить вопрос с утечками памяти? Это очень критично.

Спасибо.

Re: Построитель отчета в отдельном домене

Добавлено: 02 мар 2015, 08:04
Anton Lozovskiy
Здравствуйте,

Такой вопрос уже всплавал раньше и мы добавляли метод DisposeDesigner(), который должен был автоматически вызываться после закрытия формы.
Сейчас мы сделали его общедоступным (public)(будет доступно в следующем пререлиз билде в пятницу, если вам нужны сборки сейчас - пришлите пожалуйста запрос на саппорт)
вызовите его после закрытия формы.

В этом методе мы отписываемся от всех событий и проиходит очистка всех возможных ресурсов.

Спасибо.

Re: Построитель отчета в отдельном домене

Добавлено: 02 мар 2015, 08:15
Odon01
Спасибо огромное, можем подождать до пятницы.

Re: Построитель отчета в отдельном домене

Добавлено: 02 мар 2015, 08:17
Odon01
Еще в контроле StiWpfViewerControl есть утечки, сделайте пожалуйста и там этот метод публичным.

Спасибо.

Re: Построитель отчета в отдельном домене

Добавлено: 02 мар 2015, 10:41
Anton Lozovskiy
Здравствуйте,

У вьювера также есть метод Dispose(), который уже был открытым. Если вы используете отображение вьювера в своей форме - то его необходимо вызывать.

Если у Вас появятся дополнительные вопросы - обращайтесь, постараемся помочь.

Спасибо.