Связанные объекты не освобождают - PullRequest
0 голосов
/ 29 мая 2019

Я создал экземпляр ChromiumWebbrowser на модальной форме, а затем связал объект с помощью метода JavascriptObjectRepository.Register. После закрытия формы и повторного открытия новой модальной формы и вызова метода для связанного объекта я замечаю, что метод связанного объекта вызывается постепенно. Поэтому после того, как модальное было открыто, закрыто, а затем снова открыто, метод связанного объекта будет вызываться дважды, и в последующих циклах открытия / закрытия это число будет увеличиваться.

Как освободить связанный объект из CEF.

Я пытался определить, привязан ли уже объект (используя IsBound), но возвращает false, однако он все равно выполняет метод постепенно, когда форма открыта / закрыта.

ChromiumWebBrowser brwsr = new ChromiumWebBrowser("");
if (brwsr.JavascriptObjectRepository.IsBound("test"))
                return;
brwsr.JavascriptObjectRepository.Register("test", [object]);

1 Ответ

0 голосов
/ 30 мая 2019

Проблема возникла из-за того, что связанный объект имел обработчик событий, который не был выпущен при закрытии формы, содержащей браузер cef. При последующих запусках формы связанный объект получит обработчик события снова и вызовет возникшую проблему. Это не проблема с cef, а связанный объект, который я использовал.

...