如何在父进程被终止的情况下保持子进程的活力

我有一个Electron应用程序,我必须启动一个exe文件并退出应用程序。问题是当我试图退出时,应用程序关闭,exe文件也在之前启动……。我想让我的exe文件被打开。

我的代码是这样的

   var execFile = require('child_process').execFile;
   execFile(filePath).unref();

   const { remote }  = require('electron');
   const { app } = remote;
   app.quit();

如何在app.quit()之后打开我的文件并保持其活力?

谢谢你

解决方案:

我们可以使用detached选项在后台执行。

const { spawn } = require('child_process');

const child = spawn(`exefile path`, [...args], {
  detached: true,
});

child.unref();

分离子进程的具体行为取决于操作系统。在Windows上,分离的子进程将有自己的控制台窗口,而在Linux上,分离的子进程将成为一个新进程组和会话的领导。

如果在分离的进程上调用unref函数,父进程可以独立于子进程退出。如果子进程正在执行一个长期运行的进程,这可能会很有用,但为了让它在后台运行,子进程的stdio配置也必须独立于父进程。

给TA打赏
共{{data.count}}人
人已打赏
解决方案

在flutter中设计矩形下拉小部件。

2022-4-20 4:00:10

解决方案

使用C语言在多个CSV文件之间读取、翻译和写入数据。

2022-4-20 4:00:12

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索