I start my application using single process-mode and everything works fine with these settings:
var settings = new CefSettings();
settings.SingleProcess = true;
settings.MultiThreadedMessageLoop = CefRuntime.Platform == CefRuntimePlatform.Windows;
settings.ReleaseDCheckEnabled = true;
settings.LogSeverity = CefLogSeverity.Verbose;
settings.LogFile = "cef.log";
settings.ResourcesDirPath = System.IO.Path.GetDirectoryName(new Uri(System.Reflection.Assembly.GetEntryAssembly().CodeBase).LocalPath);
settings.RemoteDebuggingPort = 20480;
After the main form is closed I run CefRuntime.Shutdown() but it idles undefinedly and app never closes
public static void Shutdown()
{
if (!_initialized) return;
GC.Collect(GC.MaxGeneration, GCCollectionMode.Forced);
GC.WaitForPendingFinalizers();
libcef.shutdown();
}
Is there any special consideration that should be consider on single-process to work correctly?
PD: If I use the app on multi-process mode all work fine (and this is how I'll use it at production), but I need single-process for some test during development and I found this problem.
Rgds,