El controlador web PhantomJS permanece en la memoria
Estoy creando una instancia de PhantomJSDriver en C# con este código:
Driver = new PhantomJSDriver();
Y limpiándolo con esto:
Driver.Dispose();
Driver = null;
¿El proceso debería salir o permanecer en la memoria? Si se supone que debe permanecer en la memoria, visible en el administrador de tareas de Windows 7, ¿puedo eliminarlo mediante programación? ¿Debería?
Aceptado
Responder directamente Driver.Dispose();
no debería usarse para limpiar la WebDriver
instancia. Para una correcta limpieza debemos estar utilizando Driver.Quit();
.
Driver.Dispose();
: Creo que quedó obsoleto.Driver.Close();
: Se utiliza para cerrar la página actual o el navegador (si es la única página/pestaña) que tiene el foco.Driver.Quit();
: Se utiliza para llamar/shutdown endpoint
y posteriormente la instancia del controlador web se destruye por completo cerrando todas las páginas/pestañas/ventanas.
Por lo tanto, llamar al Driver.Quit()
método es la única forma de garantizar que las sesiones finalicen correctamente.
En este discussion
podrás encontrar un análisis detallado sobre Driver.Dispose();
, Driver.Close();
yDriver.Quit();