我在将我的Chrome浏览器更新到65.0.3325.162版本(最新)后遇到了问题
当我在任务管理器中完成每个方法后开始测试时,会出现额外的僵尸Chrome进程,占用CPU的许多资源。
Chrome 65上的driver.quit()方法有变化吗?我要补充的是,在之前版本的Chrome浏览器上一切正常。
我使用数据提供者,因此使用方法退出()对于正确处理我的测试套件是必要的。
在每个测试类之后,我使用mothod终止()来关闭浏览器。
我的东西:Windows 10 Selenium WebDriver ChromeDriver 2.36 Selenium Web Driver 2.20
@AfterClass(alwaysRun = true)
protected void terminate() {
if (browser != null) {
try {
browser.quit();
browser = null;
} catch (UnreachableBrowserException ex) {
TestReporter.log(ex.getMessage());
} catch (NoSuchSessionException noSuchSessionException) {
TestReporter.log("Tried to quit browser with NULL session: " + noSuchSessionException.getMessage());
}
}
if (application != null) {
application = null;
}
}
1)将驱动程序作为单例获取
@Singleton
class BrowserInstance {
ChromeDriver getDriver(){
ChromeOptions options = new ChromeOptions()
options.addArguments("--headless --disable-gpu")
return new ChromeDriver(options)
}
}
2)使用关闭并退出最终阻止
finally {
chromeDriver.close()
chromeDriver.quit()
}
结果:您一次只能使用一个实例,如果您看到任务管理器,您将不会发现chromedriver和chrome进程挂起。
更新到新版本Chrome浏览器解决了我的问题。似乎Chrome65.0.3325.162有问题,这导致创建许多僵尸Chrome进程。
我有一个要求,执行一个任务,在正好每5分钟。我考虑了多个选项,并尝试使用类来触发任务来实现这一点。但是,当应用程序被杀死时,我无法触发警报。 当应用程序打开或在后台运行时,警报似乎工作得完美无缺,但一旦我退出应用程序,它似乎完全停止了。 我的实现是使用函数,并自己处理重复这个过程。最初的警报在5秒后触发,然后在此之后每5分钟触发一次。 MyService.kt:
我在写一个玩家轮流参加的游戏。在一个回合结束时,我将我的数据发送到服务器,并更新我的数据库,让我知道现在轮到另一个玩家了。问题是,如果有人在中途扼杀了应用程序怎么办?我是说去找任务经理然后杀了它。 编辑:我还应该提到这是在一个片段中,我正在检查这个,但不要认为这会有什么不同。
日志: ... 我的项目中只有三个文件:
问题内容: 我正在用C / C ++ 创建子进程。 当父进程结束(或由于某种原因被杀死)时,我也希望所有子进程也被杀死。 这是系统自动完成的吗?还是我必须自己做? 谢谢。 问题答案: 否。如果父进程被杀死,则子进程将成为init进程的子进程(该进程的进程ID为1,并由内核作为第一个用户进程启动)。 初始化过程会定期检查新的子代,然后等待它们(从而释放由其返回值分配的资源)。
问题内容: 我想知道如何“杀死”已启动的过程。我知道Process API,但是不确定,是否可以使用它来杀死已经运行的进程,例如firefox.exe等。如果可以使用Process API,可以请您指向正确的方向?如果没有,还有哪些其他可用选项?谢谢。 问题答案: 如果你从Java应用程序中以从头开始处理(例如,通过调用或),那么你将对其具有有效的引用,并且可以在Process类中调用该方法以终止
我们试图将我们的一个node js应用程序(AngularJS/NodeJS tech stack)部署到生产环境中。随机地,当节点进程被终止时,一些ec2实例就停止了。但是没有记录应用程序/系统级别的错误消息。我们无法在本地/开发/it环境中重现此问题。有人面临过类似的事情吗?非常感谢任何帮助。谢谢!
问题内容: 我从python脚本生成了5个不同的进程,如下所示: 我的问题是,当父进程(主脚本)以某种方式被杀死时,子进程继续运行。 当父进程被杀死时,有没有办法杀死这样生成的子进程? 编辑:我正在尝试: 但这似乎不起作用 问题答案: 我自己也遇到了同样的问题,我有以下解决方案: 打电话之前,您可以设置。然后如此处所述python.org multiprocessing 进程退出时,它将尝试终止其
问题内容: 在生产环境中运行Express应用程序时,我想在服务器进程被杀死(即,发送SIGTERM或SIGINT)时正常关闭服务器。 这是我的代码的简化版本: 当我运行它并在浏览器中调用URL http:// localhost:3000 / 时,setInterval函数中的log语句将一直打印“当前打开1个连接”,直到我真正关闭浏览器窗口为止。显然,即使关闭选项卡也会使连接保持打开状态。 因