【发布时间】:2019-12-31 22:06:51
【问题描述】:
我的应用程序是一个基于文档的 Xamarin.mac 应用程序,它使用 WKWebView 显示在代码中生成的 HTML 内容。每次创建新窗口时,也会创建 2 个新进程:“APP_NAME Networking”和“about:”。但是,当窗口关闭时,这两个进程仍然存在。打开 10 个窗口,关闭 10 个窗口,我有 20 个孤立进程。
有没有人知道如何在关闭窗口时让这些消失?
(编辑) 请注意,这些不是孤立的对象/数据结构,而是独立运行的系统进程,属于应用程序,但不属于生成它们的文档窗口/视图控制器。退出应用程序,子进程死亡。但是关闭窗口,子进程继续存在......
【问题讨论】:
-
你可以维护一个原生的 ref。确保释放所有返回
IDisposable的本机对象。使用 Xamarin Profiler 将有助于追踪这些对象。 -
@SushiHangover 我认为所有本机对象在 Xamarin 中都是 IDisposable。
-
我构建了一个测试应用程序,它只是一个基于文档的新应用程序、文档空间中的 WKWebView 和一个名为“webView”的出口。构建并运行,每次打开窗口时都会在 Activity Monitor 中生成额外的进程,但永远不会消失。
-
这里是项目的链接:[dropbox.com/s/nk0t6oznklvf6u2/…App Source)
-
@IvanIčin 是吗?....
标签: xamarin wkwebview xamarin.mac