У меня есть электронное приложение, которое использует child_process.exec для запуска длинных запущенных задач. Я пытаюсь управлять, когда пользователь выходит из приложения во время этих задач.Electron kill child_process.exec
Если они выходят из моего приложения или нажимают на него, детские процессы продолжают работать до тех пор, пока они не закончатся, однако окно электронного приложения уже закрыто и вышло.
Есть ли способ уведомить пользователя о том, что процесс все еще запущен, и когда они закончили, закройте окно приложения?
Все, что я в моем main.js стандартного код:
// Quit when all windows are closed.
app.on('window-all-closed', function() {
// On OS X it is common for applications and their menu bar
// to stay active until the user quits explicitly with Cmd + Q
if (process.platform != 'darwin') {
app.quit();
}
});
Должен ли я добавлять чек где-нибудь?
Спасибо за вашу помощь
EDITED
Я не могу показаться, чтобы получить PID из child_process, пока он не закончит. Это мой код child_process
var loader = child_process.exec(cmd, function (error, stdout, stderr){
console.log(loader.pid)
if (error) {
console.log(error.message);
}
console.log('Loaded: ', value)
Должен ли я пытаться получить его по-другому?
Какое желаемое поведение, чтобы автоматически убить дочерний процесс, когда приложение закрыто или фактически разрешить его продолжить до завершения, а затем автоматически закрыть? – mscdex
@mscdex было бы здорово убить все дочерние процессы, а затем выйти из приложения. Возможно ли это? – tjmgis
Кроме того, вы должны получать pids, когда вы вызываете «дочерние процессы» и убиваете его через это. – shriek