process
process オブジェクトの拡張です。
Electron の process
オブジェクトは、Node.js process
object から拡張されています。 以下のイベント、プロパティ、メソッドが追加されます。
サンドボックス
サンドボックス化されたレンダラーでは、process
オブジェクトには以下に示す一部の API のみが含まれます。
crash()
hang()
getCreationTime()
getHeapStatistics()
getBlinkMemoryInfo()
getProcessMemoryInfo()
getSystemMemoryInfo()
getSystemVersion()
getCPUUsage()
uptime()
argv
execPath
env
pid
arch
platform
sandboxed
contextIsolated
type
version
versions
mas
windowsStore
contextId
イベント
イベント: 'loaded'
Electron が内部初期化スクリプトをロードし、ウェブページまたはメインスクリプトのロードを開始したときに発生します。
プロパティ
process.defaultApp
読み出し専用
boolean
。 このアプリがデフォルトの Electron 実行形式に引数として渡されて起動された場合、このプロパティはメインプロセス内で true
になります。それ以外では undefined
です。 For example when running the app with electron .
, it is true
, even if the app is packaged (isPackaged
) is true
. これは、process.argv
から引数をいくつ切り捨てる必要があるのかの判断に役立ちます。
process.isMainFrame
読み出し専用
boolean
で、現在のレンダラーコンテキストが"main"レンダラー フレームの場合true
。 現在のフレームの ID が必要な場合、webFrame.routingId
を使用すべきです。
process.mas
読み出し専用
boolean
。 Mac App Store ビルドの場合、このプロパティは true
、他のビルドでは undefined
です。
process.noAsar
アプリケーション内の ASAR サポートを制御する boolean
。 これをtrue
に設定した場合、Nodeのビルトインモジュールのasar
アーカイブのサポートが無効になります。
process.noDeprecation
非推奨の警告が stderr
へ出力されるかどうかを制御する boolean
。 これを true
に設定すると非推奨の警告が無効になります。 --no-deprecation
コマンドラインフラグの代わりにこのプロパティを使用します。
process.resourcesPath
読み出し専用
リソースディレクトリのパスを表す string
。
process.sandboxed
読み出し専用
boolean
。 レンダラープロセスがサンドボックス化されている場合、このプロパティは true
です。それ以外の場合は undefined
です。
process.contextIsolated
読み出し専用
boolean
型で、現在のレンダラーコンテキストで contextIsolation
が有効かどうかを示します。 これはメインプロセスでは undefined
です。
process.throwDeprecation
非推奨の警告が例外としてスローされるかどうかを制御する boolean
。 これを true
に設定すると非推奨のエラーがスローされます。 --throw-deprecation
コマンドラインフラグの代わりにこのプロパティを使用します。
process.traceDeprecation
stderr
に出力される非推奨にスタックトレースを含めるかどうかを制御する boolean
。 これを true
に設定すると非推奨のスタックトレースが出力されます。 --trace-deprecation
コマンドラインフラグの代わりにこのプロパティを使用します。
process.traceProcessWarnings
stderr
に出力されるプロセスの警告にスタックトレースを含めるかどうかを制御する boolean
。 これを true
に設定するとプロセスの (非推奨を含む) 警告のスタックトレースが出力されます。 --trace-warnings
コマンドラインフラグの代わりにこのプロパティを使用します。
process.type
読み出し専用
現在のプロセスの種別を表す以下の string
のいずれかになります。
browser
- メインプロセスrenderer
- レンダラープロセスworker
- ウェブワーカーutility
- サービスとして起動された Node のプロセス
process.versions.chrome
読み出し専用
Chrome のバージョン文字列を表す string
。
process.versions.electron
読み出し専用
Electron のバージョン文字列を表す string
。
process.windowsStore
読み出し専用
boolean
。 アプリが Windows Store アプリ (appx) として実行されている場合、このプロパティは true
です。それ以外の場合は undefined
です。
process.contextId
読み出し専用
string
型 (任意) で、現在の JavaScript コンテキストにおけるグローバルな一意の ID を表します。 各フレームにはそれぞれ JavaScript コンテキストがあります。 contextIsolation が有効な場合、隔離ワールドにも個別の JavaScript コンテキストがあります。 このプロパティはレンダラープロセスでのみ利用可能です。
process.parentPort
A Electron.ParentPort
property if this is a UtilityProcess
(or null
otherwise) allowing communication with the parent process.
メソッド
process
オブジェクトには以下のメソッドがあります。
process.crash()
現在のプロセスのメインスレッドでクラッシュを発生させます。
process.getCreationTime()
戻り値 number | null
- 発生からのミリ秒数です。情報が利用できない場合は null
を返します。
アプリケーションの作成時間を示します。 時間はエポックからのミリ秒数として表されます。 プロセスの作成時間を取得できない場合は null を返します。
process.getCPUUsage()
Returns CPUUsage
process.getHeapStatistics()
戻り値 Object
:
totalHeapSize
IntegertotalHeapSizeExecutable
IntegertotalPhysicalSize
IntegertotalAvailableSize
IntegerusedHeapSize
IntegerheapSizeLimit
IntegermallocedMemory
IntegerpeakMallocedMemory
IntegerdoesZapGarbage
boolean
V8ヒープの統計を持つオブジェクトを返します。 すべての統計情報はキロバイト単位で返ってくることに注意してください。
process.getBlinkMemoryInfo()
戻り値 Object
:
allocated
Integer - キロバイト単位でのすべての確保されたオブジェクトのサイズ。total
Integer - キロバイト単位での確保された空間の合計。
Blink のメモリ情報を持つオブジェクトを返します。 レンダリング/DOM 関連のメモリ問題のデバッグに役立ちます。 すべての数値はキロバイト単位で返ってくることに注意してください。
process.getProcessMemoryInfo()
Returns Promise<ProcessMemoryInfo>
- Resolves with a ProcessMemoryInfo
現在のプロセスについてのメモリ使用量の統計情報を与えるオブジェクトを返します。 すべての統計情報はキロバイト単位で返ってくることに注意してください。 このAPIはアプリの準備ができた後に呼び出されるべきです。
Chromium は macOS には residentSet
の値を提供しません。 これは直近の使用されていないページを macOS がメモリ内で圧縮するためです。 結果として、residentSet の値は期待されるものではありません。 private
メモリは、macOS でのプロセスの実際の圧縮前のメモリ使用量をよりよく表しています。
process.getSystemMemoryInfo()
戻り値 Object
:
total
Integer - システムで利用可能な物理メモリの合計量 (キロバイト)。free
Integer - アプリケーションまたはディスクキャッシュで使用されていないメモリの合計量。swapTotal
Integer Windows Linux - システムが使用できるスワップメモリの合計量 (キロバイト) 。swapFree
Integer Windows Linux - システムが使用できるスワップメモリの空き容量 (キロバイト)。
システム全体についてのメモリ使用量の統計情報を与えるオブジェクトを返します。 すべての統計情報はキロバイト単位で返ってくることに注意してください。
process.getSystemVersion()
戻り値 string
- ホストのオペレーティングシステムのバージョン。
サンプル:
const version = process.getSystemVersion()
console.log(version)
// macOS -> '10.13.6'
// Windows -> '10.0.17763'
// Linux -> '4.15.0-45-generic'
注釈: os.release()
とは異なり、macOS ではカーネルバージョンではなく実際のオペレーティングシステムのバージョンを返します。
process.takeHeapSnapshot(filePath)
filePath
string - 出力ファイルのパス
戻り値 boolean
- スナップショットの作成が成功したかどうかを示します。
V8 ヒープのスナップショットを撮り、それを filePath
に保存します。
process.hang()
現在のプロセスのメインスレッドでハングを発生させます。
process.setFdLimit(maxDescriptors)
macOS Linux
maxDescriptors
Integer
ファイルディスクリプタのソフトリミットを、maxDescriptors
または OS のハードリミットの、いずれか低い方に設定します。