最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

无法生成子进程

运维笔记admin11浏览0评论

无法生成子进程

无法生成子进程

我写了一个简单的函数来重启/关闭应用程序。重启不起作用,我无法弄清楚原因。子进程启动然后立即关闭。我尝试从孩子身上发现错误,但没有错误。

async function Shutdown(message,restart){
    if(message) console.log(message)

    await Logout()

    if(restart){
        let proc = childprocess.spawn(process.argv[0],process.argv.splice(1),{
            "detached": true,
        })
    }
    process.exit(0)
}
回答如下:

来自documentation:

使用分离选项启动长时间运行的进程时,在父进程退出后,进程将不会在后台继续运行,除非它提供了未连接到父进程的stdio配置。

因此,添加stdio: 'ignore'或其他方法以使子进程保持活动状态

    let proc = childprocess.spawn(process.argv[0],process.argv.splice(1),{
          detached: true,
          stdio: 'ignore'
    })
   proc.unref();

与本文相关的文章

发布评论

评论列表(0)

  1. 暂无评论