【问题标题】:How to get all processes in a display from Xvfb?如何从 Xvfb 获取显示中的所有进程?
【发布时间】:2015-12-18 21:43:24
【问题描述】:

我有一个启动 ChromeDrivers 的程序,该程序启动 Chrome 浏览器 + 稍后尝试在执行某些任务后关闭两者(使用 Selenium)。但很多时候我的程序无法杀死 ChromeDriver/Chrome 浏览器。当我尝试终止 ChromeDriver 时,Chrome 浏览器 + 它的所有其他子进程都不会被终止。

我尝试查看/proc/x/environ 确定是否可以提取进程的DISPLAY,但发现没有为浏览器+子进程设置此类环境变量。

有没有其他方法可以检测特定 Xvfb 显示中的所有进程并将它们全部杀死?

【问题讨论】:

  • 您好,能否分享您的代码,以便我们查看问题。
  • 这与所提出的问题无关。
  • 如果我理解正确,您想在完成任务后杀死所有驱动程序实例?
  • Chrome 只是首要关注的事情,但不仅限于 Chrome。我需要一种方法来获取 Xvfb 中显示的所有进程。

标签: google-chrome selenium process selenium-chromedriver xvfb


【解决方案1】:

如果您只有一个子进程,这看起来很有希望:

xvfb-run sleep 60 &
pid_xvfb=$!
kill $(ps -o pid= --ppid $pid_xvfb)

【讨论】:

    猜你喜欢
    • 2011-01-09
    • 1970-01-01
    • 2013-09-29
    • 1970-01-01
    • 2012-08-16
    • 1970-01-01
    • 2021-06-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多