【Electron-Vue 】进程无法杀死导致任务管理器资源飙升,电脑卡死的情况。

Electron-Vue 开发模式下,进程无法杀死导致任务管理器资源飙升,电脑卡死的情况。

记录一下Electron-Vue的卡死状况。
转载: 原文:https://www.jb51.net/article/171570.htm

1、在.electron-vue目录下,dev-runner.js文件中。

找到:

if (electronProcess && electronProcess.kill) {
        manualRestart = true
        process.kill(electronProcess.pid)
        electronProcess = null
        startElectron()

        setTimeout(() => {
          manualRestart = false
        }, 5000)
      }

改代码块,只杀死了开始的哪一个进程,多次保存刷新的时候会产生新的进程无法杀死。
将其修改为:

if (electronProcess && electronProcess.kill) {
        manualRestart = true
        const pid = electronProcess.pid
        exec(`TASKKILL /F /IM electron.exe`, function (err, data) {
          if (err) console.log(err)
          else console.log('kill pid: ' + pid + ' success!')
          electronProcess = null
          startElectron()
          manualRestart = false
        })
      }

Over~

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Electron-Vue进程通讯可以通过使用 `ipcRenderer` 和 `ipcMain` 进行实现。 `ipcRenderer` 是在渲染进程中使用的模块,它负责发送异步消息到主进程中的 `ipcMain`,并且接收主进程回复的消息。使用 `ipcRenderer.send(channel, args)` 向主进程发送消息,使用 `ipcRenderer.on(channel, listener)` 监听主进程发送过来的消息。 `ipcMain` 是在主进程中使用的模块,它负责接收来自渲染进程发送过来的异步消息,并且处理消息后通过 `event.sender.send()` 方法向渲染进程发送回复消息。使用 `ipcMain.on(channel, listener)` 监听渲染进程发送过来的消息。 下面是一个简单的示例,演示了如何在渲染进程和主进程之间进行简单的通讯: ```js // 在渲染进程中 const { ipcRenderer } = require('electron') ipcRenderer.send('message', 'Hello World!') ipcRenderer.on('reply', (event, arg) => { console.log(arg) }) // 在主进程中 const { ipcMain } = require('electron') ipcMain.on('message', (event, arg) => { console.log(arg) event.sender.send('reply', 'Hi there!') }) ``` 在上面的示例中,渲染进程通过 `ipcRenderer.send()` 方法向主进程发送了一个消息,主进程通过 `ipcMain.on()` 方法监听渲染进程发送过来的消息,处理完消息后通过 `event.sender.send()` 方法向渲染进程发送了一个回复消息。渲染进程通过 `ipcRenderer.on()` 方法监听主进程发送过来的回复消息,并且在控制台输出了回复消息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值