Общий вопрос о запущенных процессах cefsharp - PullRequest
0 голосов
/ 06 июня 2019

Я обновляю свое приложение с CefSharp 53 до текущего CefSharp 73. (Я знаю, супер позади).Я специально использую CefSharp.OffScreen.ChromiumWebBrowser, и я заметил одну вещь: теперь запускаются два процесса CefSharp.BrowserSubprocess.exe (в Windows 10, x64).При вызове dispose один из двух процессов закрывается, а другой остается открытым.

Ожидается ли это?С версией 53 он просто запустил один процесс и закрыл его после вызова dispose.Если это помогает, я использую cefsharp для создания скриншота, поэтому после загрузки страницы я вызываю ScreenShotOrNull ().

Редактировать: Некоторый контекст кода:

Я запускаю cefsharp при запуске службы Windows:

static void Main(string[] args)
{
        var settings = var settings = new CefSettings
        {
            LogSeverity = LogSeverity.Warning
        };
        settings.CefCommandLineArgs.Add("disable-gpu", "1");
        settings.CefCommandLineArgs.Add("disable-gpu-vsync", "1");
        CefSharpSettings.LegacyJavascriptBindingEnabled = true;
        Cef.Initialize(settings);
 }

На данный момент не создается ни один браузер и, следовательно, нет процессов.Однако при необходимости я позвоню:

 using (_browser = new ChromiumWebBrowser(url) { Size = new 
 Size(width, 720) })
 {
      // At this point, there are two processes
      // Code waiting for browser to finish loading
      using(var bitmap = _browser.ScreenshotOrNull())
      {
          // Code for saving
      }
 }

После его завершения существует только один процесс со следующими параметрами командной строки:

--type=gpu-process
--field-trial-handle=2968,16124456567459120137,1231289933363561479,131072
--disable-features=VizDisplayCompositor
--no-sandbox
--disable-gpu-vsync=1
--log-file="log.txt"
--log-severity=warning
--lang=en-US    --cefsharpexitsub
--gpu-preferences=AGiantStringThatWontDisplayHereCorrectly
--use-gl=swiftshader-webgl
--log-file="debug.log"
--service-request-channel-token=13307567583052100413
--mojo-platform-channel-handle=3016
/prefetch:2
 --host-process-id=7444  10428
...