Electron 为我们提供了 2 个 IPC(进程间通信)模块,称为ipcMainipcRenderer

ipcMain

Communicate asynchronously from the main process to renderer processes.

所述ipcMain模块用于从主进程(main process)异步通信到renderer进程。

ipcRenderer

Communicate asynchronously from a renderer process to the main process.

所述ipcRenderer模块用于从一个renderer进程异步传送到主进程。

我们将创建一个主进程和一个渲染器进程,它们将使用上述模块相互发送消息。

代码实战:

创建window时候需要加

webPreferences: {// preload: path.join(__dirname, 'preload.js')nodeIntegration: true,contextIsolation: false,
}
   win = new BrowserWindow({width: 800,height: 600,webPreferences: {// preload: path.join(__dirname, 'preload.js')nodeIntegration: true,contextIsolation: false,}});

主进程向渲染进程发异步消息:

main.js

win.webContents.send('asynchronous-reply', 'whoooooooh!')

view.js

// Async message handler
ipcRenderer.on('asynchronous-reply', (event, arg) => {console.log(arg)//print whoooooooh
});

渲染进程向主进程发异步消息:

view.js

// Async message handler
ipcRenderer.on('asynchronous-reply', (event, arg) => {console.log(arg)
});
ipcRenderer.send('asynchronous-message', 'async ping');

main.js

// Event handler for asynchronous incoming messages
ipcMain.on('asynchronous-message', (event, arg) => {console.log(arg);// Event emitter for sending asynchronous messagesevent.sender.send('asynchronous-reply', 'async pong')
});

Electron IPC(进程间通信)之ipcMain和ipcRenderer相关推荐

  1. Electron的进程间通信方式

    Electron 进程通信篇 一.Electron进程间如何通信? 进程间通信 (IPC) 是在 Electron 中构建功能丰富的桌面应用程序的关键部分之一. 由于主进程和渲染器进程在 Electr ...

  2. 大概是全网最详细的Electron ipc 讲解(三)——定情信物传声筒port

    希沃ENOW大前端 公司官网:CVTE(广州视源股份) 团队:CVTE旗下未来教育希沃软件平台中心enow团队 「本文作者:」 前言 本系列共有以下几个章节: 主进程与渲染进程的两情相悦 渲染进程与渲 ...

  3. 大概是全网最详细的Electron ipc 讲解(一)——主进程与渲染进程的两情相悦

    希沃ENOW大前端 公司官网:CVTE(广州视源股份) 团队:CVTE旗下未来教育希沃软件平台中心enow团队 「本文作者:」 image.png 前言 你盼世界,我盼望你无 bug .Hello 大 ...

  4. ipcMain和ipcRenderer的通信

    ipcMain和ipcRenderer的通信 ipcMain**:**当在主进程中使用时,它处理从渲染器进程(网页)发送出来的异步和同步信息, 当然也有可能从主进程向渲染进程发送消息. ipcRend ...

  5. Windows Mobile使用Shared Memory(共享内存)进行IPC(进程间通信)的开发

    背景 在Unix-like系统进行IPC(Inter-process communication)通信,Shared memory是效率最高的,我称之为IPC的王中王. 简介 本文讲述在Windows ...

  6. 【Android Binder 系统】一、Binder 系统核心 ( IPC 进程间通信 | RPC 远程调用 )

    文章目录 一.Binder 系统两个核心 二.IPC 进程间通信 三.RPC 远程过程调用 一.Binder 系统两个核心 Binder 系统 最重要的两个核心是 IPC 和 RPC ; IPC ( ...

  7. Android开发之IPC进程间通信-AIDL介绍及实例解析

    一.IPC进程间通信 IPC是进程间通信方法的统称,Linux IPC包括以下方法,Android的进程间通信主要采用是哪些方法呢? 1. 管道(Pipe)及有名管道(named pipe):管道可用 ...

  8. 进程互斥锁,队列,IPC进程间通信,生产者与消费者,线程,线程对象的属性,先行互斥锁...

    进程互斥锁: 让并发变成串行, 牺牲了执行效率, 保证了数据安全.在程序并发执行时,需要修改数据时使用. 队列 队列:先进先出 ​ 相当于内存中产生一个队列空间,先进先出, ​ 可以存放多个数据,但数 ...

  9. YDOOK: Python3 IPC 进程间通信方法分类总结

    YDOOK: Python3 IPC 进程间通信方法分类总结 © YDOOK JY Lin 1.管道:pipeline 2.消息队列:msg queue 3.共享内存:share memory 4.信 ...

  10. 音视频:06.linux系统-IPC进程间通信

    linux系统-IPC进程间通信 1.进程间通信的方式 2.管道(pipe) 3.共享映射区 4.信号 1.进程间通信的方式 文件,管道,信号.信号量,共享映射区(共享内存),消息队列,管道,套接字( ...

最新文章

  1. 扩增子分析解读7物种分类统计,筛选进化树和其它
  2. BiLSTM+CRF的损失由发射矩阵和转移矩阵计算而得 BiLSTM+CRF命名实体识别:达观杯败走记(下篇
  3. MySQL中的共享锁与排他锁
  4. 为什么在C#中捕获并抛出异常?
  5. 分享15款为开发人员准备的开发移动应用程序必备的新资源和工具
  6. 启动redis闪退/失败
  7. code craft_Craft.io,设计和代码
  8. HTTP性能测试工具wrk安装及使用
  9. Rust : Box 为什么这里并不需要拆箱?
  10. 药物临床试验数据递交PMDA的规定
  11. 概要设计说明书【校园BBS论坛】2022-5.5
  12. 技能高考的计算机教室,2020湖北技能高考成绩查询时间
  13. 只利用 phpstudy 如何运行PHP文件 超详细教程
  14. Kinect使用系列
  15. MongoDB中where in操作
  16. rabbitmq的web管理界面-密码管理
  17. WPF与3D 模型(一)把Solidworks里的模型导入进WPF程序
  18. Centos7 合理分配 swap空间
  19. 计算机word操作基础题,计算机操作基础Word练习题
  20. 如何从Excel表格导入数据批量生成二维码

热门文章

  1. 版本控制工具——subversion
  2. [WebApi] 捣鼓一个资源管理器--多文件上传
  3. java 整形数据类型_3.2Java基本数据类型之整型
  4. mysql 联合查询去重复_两个表联合查询去重复GROUP_CONCAT
  5. 数据计算 统计学案例_数据分析适合什么专业?
  6. 微课有关计算机应用基础,【计算机仿真论文】微课在计算机应用基础课的应用(共3802字)...
  7. java重构三部曲,建构·解构·重构——漫谈批注式阅读三部曲
  8. 技校计算机程序设计,如何编写技工学校计算机程序设计课程校本教材
  9. 蕊动矿机linux cpu超频,蚂蚁l3矿机超频方法!最佳超频参数!  |  呆毛网
  10. mysql优化 知乎_MYSQL优化