progress(进程)
进程对象的扩展
progress对象扩展了以下的API
事件
‘loaded’事件
当Electron已经加载完它内部的初始化脚本并准备加载web页面或者main脚本时触发.
当node集成被关闭时,它可以用来预加载移除的node全局变量给全局作用域
1
2
3
4
5
6
7 // preload.js
const _setImmediate = setImmediate;
const _clearImmediate = clearImmediate;
process.once('loaded', () => {
global.setImmediate = _setImmediate;
global.clearImmediate = _clearImmediate;
});
属性
process.noAsar
设置为true可以使nodejs的asar内置文件无效。process.type
当前的进程类型,可以是"browser"(主进程)或者"render"process.versions.electron
Electron的字符串版本号process.versions.chrome
Chrome的字符串版本号process.resourcesPath
资源目录的路劲process.mas
对于Mac App Store,这个属性是true,其余的构建是undefinedprocess.windowsStore
对于Windows的app这个属性是true,其他的则是undefinedprocess.defaultApp
应用启动时,这个值作为参数默认传入,在主进程中这个属性是true,其他方面是undefined
方法
进程有以下的方法:
process.crash()
销毁当前进程的主线程process.hang()
挂起当前进程的主线程process.setFdLimit(maxDescriptors) macOS Linux
maxDescriptors整数
设置文件描述符软限制于 maxDescriptors 或硬限制与os, 无论它是否低于当前进程.process.getProcessMemoryInfo()
返回当前进程的内存使用总计计的一个对象,注意所有的统计以千字节报告:workingSetSize- 被压入到真实RAM物理机的内存总计peakWorkingSetSize- 被压入到真实RAM物理机的的最大内存privateBytes- 不被其他进程共享的内存总计,比如JS堆,HTML内容sharedBytes- 进程间共享的内存总计,通常情况下是Electron自己的代码消耗的内存
process.getSystemMemoryInfo()
返回系统内存使用总计的对象,注意所有的统计以千字节报告:
total- 系统可用物理内存的总计free- 还有多少空闲内存可用在Windows或Linux
- swapTotal
- swapFree