process
Extension de l'objet process.
L'objet process
d'Electron une extension de l'objet process
de Node.js. Cela ajoute les événements, propriétés et méthodes suivantes :
Mode bac à sable
Dans les moteurs de rendu en bac à sable, l'objet process
ne contient qu'un sous-ensemble des APIs :
crash()
hang()
getCreationTime()
getHeapStatistics()
getBlinkMemoryInfo()
getProcessMemoryInfo()
getSystemMemoryInfo()
getSystemVersion()
getCPUUsage()
getIOCounters()
uptime()
argv
execPath
env
pid
arc
plateforme
bac à sable
contextIsolated
type
version
versions
mas
windowsStore
contextId
Événements
Événement : 'loaded'
Émis lorsque Electron a chargé son script d'initialisation interne et que commence à charger la page web ou le script principal.
Propriétés
process.defaultApp
Readonly
Type: boolean
. When the app is started by being passed as parameter to the default Electron executable, this property is true
in the main process, otherwise it is undefined
. For example when running the app with electron .
, it is true
, even if the app is packaged (isPackaged
) is true
. This can be useful to determine how many arguments will need to be sliced off from process.argv
.
process.isMainFrame
Readonly
boolean
, true
lorsque le contexte du moteur de rendu actuel est la frame de rendu "main" . Pour réupérer l'ID de la trame actuelle, vous devez utiliser webFrame.routingId
.
process.mas
Readonly
Type: boolean
. Pour la compilation de l'App Store Mac, cette propriété est à true
, pour les autres builds, elle est undefined
.
process.noAsar
boolean
qui contrôle la prise en charge d'ASAR dans votre application. Lorsque définit à true
le support des archives asar
dans les modules intégrés de Node sera désactivé.
process.noDeprecation
boolean
contrôle si les avertissements de dépréciation sont enoyé ou pas vers le stderr
. Lorsque définit comme true
les avertissements de dépréciation ne sront pas reçus. Cette propriété est utilisée à la place du drapeau --no-deprecation
.
process.resourcesPath
Readonly
Une string
représentant le chemin vers le répertoire des ressources.
process.sandboxed
Readonly
Type: boolean
. Lorsque le processus de rendu est en bac à sable, cette propriété est à true
, sinon elle est undefined
.
process.contextIsolated
Lecture seule
boolean
qui indique si le contexte du moteur de rendu actuel a sa contextIsolation
activée. Est undefined
dans le processus principal.
process.throwDeprecation
boolean
qui contrôle si oui ou non les avertissements de dépréciation seront lancés sous la forme d'exceptions . En définissant cette valeur à true
lancera des erreurs pour les dépréciations. Cette propriété est utilisée à la place du drapeau de ligne de commande --throw-deprecation
.
process.traceDeprecation
boolean
contrôle si les dépréciations sorties sur stderr
incluent leur trace de pile. En définissant cette valeur à true
affichera les traces de piles pour les dépréciations. Cette propriété est à la place du drapeau --trace-deprecation
.
process.traceProcessWarnings
boolean
qui contrôle si oui ou non les avertissements de processus sur stderr
incluent leur trace de pile. En définissant cette valeur à true
affichera les traces de piles pour les avertissements de processus (y compris les dépréciations). Cette propriété est à la place du drapeau de ligne --trace-warnings
de la commande .
process.type
Readonly
string
représentant le type du processus actuel, celui-ci peut être:
browser
- Pour le processus principalrenderer
- Pour un processus de renduworker
- Pour un web workerutility
- Dans un processus de node lancé en tant que service
process.versions.chrome
Readonly
Un string
représentant la version de Chrome.
process.versions.electron
Readonly
Un string
représentant la version d'Electron.
process.windowsStore
Readonly
Type: boolean
. Indique si l'application fonctionne en tant qu'application Windows Store (appx), cette propriété est à true
, sinon elle est undefined
.
process.contextId
Lecture seule
Une string
(facultatif) représentant un ID globalement unique dans le contexte JavaScript actuel. Chaque frame a son propre contexte JavaScript. Lorsque contextIsolation est activé, le monde isolé dispose également d’un contexte JavaScript distinct. Cette propriété n’est disponible que dans le processus de rendu.
process.parentPort
Propriété Electron.ParentPort
si il s'agit d'un UtilityProcess
(ou sinon null
) autorisant la communication avec le processus parent.
Méthodes
L'objet process
dispose des méthodes suivantes :
process.crash()
Cause le thread principal du processus en cours de plantage.
process.getCreationTime()
Retourne number | null
- Le nombre de millisecondes depuis l'epoch, ou null
si les informations sont indisponibles
Indique l’heure de création de l’application. Le temps est représenté par le nombre de millisecondes depuis l'epoch. Il retourne null s'il est impossible d'obtenir le temps de création du processus.
process.getCPUUsage()
Retourne CPUUsage
process.getIOCounters()
Windows Linux
Retourne IOCounters
process.getHeapStatistics()
Retourne Object
:
totalHeapSize
IntegertotalHeapSizeExecutable
EntierTaillephysique
EntierTaille totale
EntierusedHeapSize
IntegerheapSizeLimit
IntegerMémoire de malloced
EntierpeakMallocedMemory
IntegerdoesZapGarbage
boolean
Renvoie un objet avec les statistiques du tas de V8. Notez que toutes les statistiques sont en kilo-octets.
process.getBlinkMemoryInfo()
Retourne Object
:
alloué
Integer - Taille de tous les objets alloués dans Kilobytes.total
Integer - Espace total alloué en kilobytes.
Renvoie un objet avec des informations de mémoire Blink. Peut être utile pour déboguer des problèmes de mémoire liés au rendu / DOM. Notez que toutes les valeurs sont indiquées en Kilobytes.
process.getProcessMemoryInfo()
Retourne Promise<ProcessMemoryInfo>
- résout avec un ProcessMemoryInfo
Renvoie un objet donnant des statistiques d’utilisation de la mémoire sur le processus en cours. Notez que toutes les statistiques sont exprimées en Kilobytes. Cette Api doit être appelée une fois l’application prête.
Chromium ne fournit pas de valeur residentSet
pour macOS. Ceci est dû au fait que macOS effectue une compression en mémoire des pages qui n'ont pas été récemment utilisées. En tant que résultat la valeur de la taille de la définition résident n'est pas celle qu'on pourrait attendre. la mémoire privé
est plus représentative de l'utilisation réelle de la mémoire de pré-compression du processus sur macOS.
process.getSystemMemoryInfo()
Retourne Object
:
total
Integer - La quantité totale de mémoire physique dans Kilobytes disponibles pour le système .libre
Integer - La quantité totale de mémoire non utilisée par les applications ou le cache du disque.swapTotal
Integer Windows Linux - La quantité totale de mémoire swap dans Kilobytes disponible pour le système .swapFree
Integer Windows Linux - La quantité gratuite de mémoire swap dans Kilobytes disponible pour le système .
Renvoie un objet donnant des statistiques d’utilisation de la mémoire sur l’ensemble du système. Notez que toutes les statistiques sont exprimées en Kilobytes.
process.getSystemVersion()
Retourne string
- La version du système d'exploitation hôte.
Exemple :
const version = process.getSystemVersion()
console.log(version)
// Sur macOS -> '10. 3.6'
// Sous Windows -> '10.0.17763'
// Sous Linux -> '4.15.0-45-générique'
Remarque : Il retourne la version réelle du système d'exploitation au lieu de la version du noyau sur macOS contrairement à os.release()
.
process.takeHeapSnapshot(filePath)
filePath
string - Chemin vers le fichier de sortie.
Retourne boolean
- Indique si l'instantané a été créé avec succès.
Prend un instantané de tas V8 et l'enregistre dans filePath
.
process.hang()
Cause le fil de discussion principal du processus actuel.
process.setFdLimit(maxDescriptors)
macOS Linux
maxDescriptors
Integer
Définit la limite de programmation du descripteur de fichier à maxDescriptors
ou la limite de dur de l'OS, quelle que soit la plus faible pour le processus en cours.