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

时间:2016-08-25 21:15:22

标签: javascript node.js electron

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

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

  1. 在Renderer Process中为每个任务调用child_process.fork()
  2. 我可以使用electron.js ipc模块从Renderer Process向Main Process发送消息,然后在Main Process中,我可以为每个任务调用child_process.fork()
  3. 我的问题是 1.在Main Process中使用child_process.fork()而不是Renderer Process有什么好处? 2.如果我在Main进程中调用child_process.fork(),它会帮助我的UI更顺畅吗?

    注意:我需要为每个任务创建多个单独的进程,因此我不能只使用单个主进程来进行繁重的计算。

1 个答案:

答案 0 :(得分:1)

老实说,我不会使用child_process。每个Electron窗口都有自己的进程,因此我只需在自己的Electron窗口中运行繁重的任务。这也使您可以访问Node,Electron(及其IPC模块)和DOM的所有内容。基本上JS提供的一切都是:)

通过这种方式,您的主要流程可以留给核心功能,您需要的任何UI都将位于自己的Electron窗口中,没有UI延迟。 Electron Quickstart提供了有关如何在Electron中处理流程的更多信息。

编辑/注意:可以在没有UI的情况下创建电子窗口,完全隐藏。