process
Extensions to process object.
Electron's process object is extended from the
Node.js process object.
It adds the following events, properties, and methods:
Events
Event: 'loaded'
Emitted when Electron has loaded its internal initialization script and is beginning to load the web page or the main script.
It can be used by the preload script to add removed Node global symbols back to the global scope when node integration is turned off:
// preload.js
const _setImmediate = setImmediate
const _clearImmediate = clearImmediate
process.once('loaded', () => {
global.setImmediate = _setImmediate
global.clearImmediate = _clearImmediate
})
Properties
process.noAsar
Setting this to true can disable the support for asar archives in Node's
built-in modules.
process.type
Current process's type, can be "browser" (i.e. main process) or "renderer".
process.versions.electron
Electron's version string.
process.versions.chrome
Chrome's version string.
process.resourcesPath
Path to the resources directory.
process.mas
For Mac App Store build, this property is true, for other builds it is
undefined.
process.windowsStore
If the app is running as a Windows Store app (appx), this property is true,
for otherwise it is undefined.
process.defaultApp
When app is started by being passed as parameter to the default app, this
property is true in the main process, otherwise it is undefined.
Methods
The process object has the following method:
process.crash()
Causes the main thread of the current process crash.
process.hang()
Causes the main thread of the current process hang.
process.setFdLimit(maxDescriptors) macOS Linux
maxDescriptorsInteger
Sets the file descriptor soft limit to maxDescriptors or the OS hard
limit, whichever is lower for the current process.
process.getProcessMemoryInfo()
Returns Object:
workingSetSizeInteger - The amount of memory currently pinned to actual physical RAM.peakWorkingSetSizeInteger - The maximum amount of memory that has ever been pinned to actual physical RAM.privateBytesInteger - The amount of memory not shared by other processes, such as JS heap or HTML content.sharedBytesInteger - The amount of memory shared between processes, typically memory consumed by the Electron code itself
Returns an object giving memory usage statistics about the current process. Note that all statistics are reported in Kilobytes.
process.getSystemMemoryInfo()
Returns Object:
totalInteger - The total amount of physical memory in Kilobytes available to the system.freeInteger - The total amount of memory not being used by applications or disk cache.swapTotalInteger - The total amount of swap memory in Kilobytes available to the system. Windows LinuxswapFreeInteger - The free amount of swap memory in Kilobytes available to the system. Windows Linux
Returns an object giving memory usage statistics about the entire system. Note that all statistics are reported in Kilobytes.