2017-08-31 44 views
-1

我實例在C#中PhantomJSDriver與此代碼:PhantomJS網絡驅動程序保留在內存中

Driver = new PhantomJSDriver(); 

而與此清理起來:

Driver.Dispose(); 
Driver = null; 

如果該進程退出或留在記憶?如果它應該保留在內存中,可以在Windows 7任務管理器中看到,我可以通過編程來殺死它嗎?我是不是該?

+0

的[webdriver.Dispose(),.Close()和.Quit()之間的不同]可能的複製(HTTPS的詳細分析://計算器.COM /問題/ 15067107 /差間的webdriver-處置近距和退出) – JeffC

回答

2

直接應答,Driver.Dispose();不應該用於清理WebDriver實例。爲了適當的清理,我們必須使用Driver.Quit();

  1. Driver.Dispose();:我覺得不推薦使用。
  2. Driver.Close();:它用於關閉當前頁面或瀏覽器(如果它是唯一的頁面/選項卡),它具有焦點。
  3. Driver.Quit();:它被用來調用/shutdown endpoint,隨後Web驅動程序實例被銷燬完全關閉所有頁面/選項卡/窗口。

因此調用Driver.Quit()方法是保證會話都正常終止的唯一途徑。

在此discussion你可以找到Driver.Dispose();Driver.Close();Driver.Quit();