Я заметил, что когда вы вручную закрываете браузер, запущенный с помощью Puppeteer, он продолжает занимать память. Я одиннадцать раз пытался запустить экземпляр браузера, а затем закрыть его вручную (щелкнув крестик в верхнем углу интерфейса браузера), но с одиннадцатой попытки я получил предупреждение
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 exit listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGINT listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGINT listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGTERM listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGTERM listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGHUP listeners added to [process]. Use emitter.setMaxListeners() to increase limit
(node:20424) MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGHUP listeners added to [process]. Use emitter.setMaxListeners() to increase limit
Я пытался управлять эта проблема заключается в уничтожении дочернего процесса браузера (идентифицируемого его pid) при возникновении события «отключено», но оно не работает:
browser = await puppeteer.launch({
headless:false,
devtools:false,
})
page = (await browser.pages())[0];
const browserPid = browser.process().pid;
browser.on('disconnected', () => {
process.kill(browserPid)
})
Любая помощь?