gpt4 book ai didi

electron - 在 Electron 中产生一个过程

转载 作者:行者123 更新时间:2023-12-02 04:32:25 27 4
gpt4 key购买 nike

我看过一些关于这个主题的帖子,是的,当我在控制台中使用 Electron 命令时它运行得很好。但是当我打包(electron-builder) Electron 应用程序时它无法工作,并且当我启动应用程序:它开始不断创建新进程,因此我们可以看到任务管理器中有很多进程,CPU 使用率达到 100%。我不知道这是怎么发生的,你能帮帮我吗?请!这是我的测试代码:

master.js(主):

var childProcess = require('child_process');
let createProc = () => {
let sp = childProcess.spawn(process.execPath, ['./go.js'], {stdio:'ignore'});
sp.unref();
sp.on('error', (err) => {
console.log('failed to start process',err);
});
sp.on('exit',(code, signal) => {
console.log(`child process exited with code ${code}`);
createProc();
});
}

createProc();

go.js:

const {app, BrowserWindow} = require('electron');
let basicWindowParams = {
show: true,
autoHideMenuBar:true
};
console.log(process.execPath)
console.log(process.execArgv)
console.log(process.pid)
app.on('ready', () => {
let win = new BrowserWindow(basicWindowParams);
win.loadURL('http://www.reddit.com/');
win.on('did-finish-load', () => {
win.show();
});
});

操作系统: Windows 10

Electron :1.8.1

更新:我创建了一个用于演示的存储库:https://github.com/xzycn/el_test

最佳答案

在主 Electron 文件中你可以使用这样的东西:

let serverProc = require('child_process').fork(
require.resolve('./server.js'),
['--key', 'value'], // pass to process.argv into child
{
// options
}
)
serverProc.on('exit', (code, sig) => {
// finishing
})
serverProc.on('error', (error) => {
// error handling
})

关于electron - 在 Electron 中产生一个过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47383853/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com