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
,其余的构建是undefined
process.windowsStore
对于Windows的app这个属性是true
,其他的则是undefined
process.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