在electronjs中,在Main Process中然后在Renderer Process中使用child_process.fork有什么好处

根据电子js文档,我可以使用节点js模块。 我想创build多个独立的进程来执行繁重的计算任务,而不会阻塞UI。

我有2个选项来调用node.js child_process.fork()

  1. 在Renderer Process中为每个任务调用child_process.fork()
  2. 我可以使用electron.js ipc模块将消息从Renderer进程发送到主进程,然后在主进程中,我可以为每个任务调用child_process.fork()

我的问题是1.在主进程而不是渲染器进程中使用child_process.fork()有什么好处? 2.如果我在主进程中调用child_process.fork(),它会帮助我的UI更加stream畅吗?

注意:我需要为每个任务创build多个单独的进程,所以我不能只使用单个主进程来执行大量计算。

老实说,我不会使用child_process 。 每个电子窗口都有自己的过程,所以我只需在自己的电子窗口中执行繁重的任务。 这也可以让你访问所有的Node,Electron(及其IPC模块)和DOM。 基本上所有的JS都提供:)

这样,您的主stream程就可以留给核心function,无论您需要什么UI,都可以在自己的电子窗口中进行,而且不会出现UI延迟。 Electron快速入门有更多关于Electron处理过程的信息。

编辑/注意:电子窗口可以创build没有UI,完全隐藏。