如何解决BrowserSubprocess 进程在关闭浏览器后保持打开状态
我使用的是cefsharp 87.1.132。我的程序能够清除浏览器缓存。关闭浏览器后,仍有几个 BrowserSubprocess 进程会阻止缓存文件并防止它们被删除。从版本 71.0.2 更新之前,一切正常,关闭浏览器后,所有 BrowserSubprocess 进程都已关闭。我不知道如何解决这个问题,也许有办法解决它,或者至少可以在不重新启动程序的情况下删除缓存。我的Cef初始化方法:
public static void Init(Settings appsettings)
{
CefSettings cefSettings = new CefSettings()
{
LocalesDirPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory,"locales"),Locale = appsettings.CurrentChromeLanguage.ToLocal(),UserAgent = appsettings.UserAgent,AcceptLanguageList = appsettings.CurrentChromeLanguage.ToAcceptList()
};
if (!appsettings.IsAnimation)
{
cefSettings.SetOffScreenRenderingBestPerformanceArgs();
cefSettings.WindowlessRenderingEnabled = false;
}
else
{
cefSettings.WindowlessRenderingEnabled = true;
}
if (!cefSettings.CefCommandLineArgs.ContainsKey("disable-gpu"))
{
cefSettings.CefCommandLineArgs.Add("disable-gpu","1");
}
if (cefSettings.CefCommandLineArgs.ContainsKey("enable-system-flash"))
{
cefSettings.CefCommandLineArgs.Remove("enable-system-flash");
}
if (cefSettings.CefCommandLineArgs.ContainsKey("enable-media-stream"))
{
cefSettings.CefCommandLineArgs.Remove("enable-media-stream");
}
cefSettings.CefCommandLineArgs.Add("enable-media-stream","0");
if (!appsettings.IsLoadImage)
{
cefSettings.CefCommandLineArgs.Add("disable-image-loading","1");
}
cefSettings.LogFile = Path.Combine(ClientConfig.ChromeDataPath,"Log.txt");
cefSettings.LogSeverity = LogSeverity.Error;
cefSettings.IgnoreCertificateErrors = true;
if (!Cef.IsInitialized && !Cef.Initialize(cefSettings))
{
throw new ArgumentException("Chrome не инициализирован");
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。