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()argvexecPathenvpidarcplateformebac à sablecontextIsolatedtypeversionversionsmaswindowsStorecontextId
É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:
totalHeapSizeIntegertotalHeapSizeExecutableEntierTaillephysiqueEntierTaille totaleEntierusedHeapSizeIntegerheapSizeLimitIntegerMémoire de mallocedEntierpeakMallocedMemoryIntegerdoesZapGarbageboolean
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.totalInteger - 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:
totalInteger - La quantité totale de mémoire physique dans Kilobytes disponibles pour le système .libreInteger - La quantité totale de mémoire non utilisée par les applications ou le cache du disque.swapTotalInteger Windows Linux - La quantité totale de mémoire swap dans Kilobytes disponible pour le système .swapFreeInteger 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)
filePathstring - 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
maxDescriptorsInteger
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.