process
process オブジェクトの拡張機能。
Electron の process
オブジェクトは、Node.js の process
オブジェクトから拡張されています。以下のイベント、プロパティ、メソッドが追加されます。
サンドボックス
サンドボックス化されたレンダラーでは、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 が内部初期化スクリプトをロードし、Web ページまたはメインスクリプトのロードを開始するときに発行されます。
プロパティ
process.defaultApp
読み取り専用
boolean
。アプリがデフォルトの Electron 実行可能ファイルへのパラメータとして渡されることで開始された場合、このプロパティはメインプロセスでは true
になり、それ以外の場合は undefined
になります。たとえば、アプリを electron .
で実行している場合、アプリがパッケージ化されている(isPackaged
) が true
であっても、true
になります。これは、process.argv
からスライスする必要がある引数の数を判断するのに役立ちます。
process.isMainFrame
読み取り専用
boolean
。現在のレンダラーコンテキストが「メイン」レンダラーフレームである場合は 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
読み取り専用
現在のレンダラーコンテキストで contextIsolation
が有効になっているかどうかを示す boolean
。メインプロセスでは 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
- Web worker 内utility
- サービスとして起動されたノードプロセス内
process.versions.chrome
読み取り専用
Chrome のバージョン文字列を表す string
。
process.versions.electron
読み取り専用
Electron のバージョン文字列を表す string
。
process.windowsStore
読み取り専用
boolean
。アプリが Windows ストアアプリ(appx)として実行されている場合、このプロパティは true
になり、それ以外の場合は undefined
になります。
process.contextId
読み取り専用
現在の JavaScript コンテキストのグローバルに一意の ID を表す string
(オプション)。各フレームには独自の JavaScript コンテキストがあります。contextIsolation が有効になっている場合、分離されたワールドにも個別の JavaScript コンテキストがあります。このプロパティは、レンダラープロセスでのみ使用できます。
process.parentPort
これがUtilityProcess
である場合(またはそれ以外の場合は null
)、親プロセスとの通信を可能にするElectron.ParentPort
プロパティ。
メソッド
process
オブジェクトには次のメソッドがあります。
process.crash()
現在のプロセスのメインスレッドをクラッシュさせます。
process.getCreationTime()
number | null
を返します - エポックからのミリ秒数、または情報が利用できない場合は null
アプリケーションの作成時間を示します。時間はエポックからのミリ秒数として表されます。プロセス作成時間取得に失敗した場合は null を返します。
process.getCPUUsage()
CPUUsage を返します
process.getHeapStatistics()
Object
を返します
totalHeapSize
整数totalHeapSizeExecutable
整数totalPhysicalSize
整数totalAvailableSize
整数usedHeapSize
整数heapSizeLimit
整数mallocedMemory
整数peakMallocedMemory
整数doesZapGarbage
ブール値
V8 ヒープ統計を含むオブジェクトを返します。すべての統計はキロバイト単位で報告されます。
process.getBlinkMemoryInfo()
Object
を返します
allocated
整数 - 割り当てられたすべてのオブジェクトのサイズ(キロバイト)。total
整数 - 割り当てられた合計スペース(キロバイト)。
Blink メモリ情報を含むオブジェクトを返します。これは、レンダリング/DOM 関連のメモリ問題をデバッグするのに役立ちます。すべての値はキロバイト単位で報告されることに注意してください。
process.getProcessMemoryInfo()
Promise<ProcessMemoryInfo>
を返します - ProcessMemoryInfoで解決します
現在のプロセスに関するメモリ使用統計を返すオブジェクトを返します。すべての統計はキロバイト単位で報告されます。この API は、アプリの準備ができてから呼び出す必要があります。
ChromiumはmacOSに対してresidentSet
の値を提供しません。これはmacOSが最近使用されていないページのインメモリ圧縮を行うためです。結果として、resident set sizeの値は期待されるものとは異なります。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)
// On macOS -> '10.13.6'
// On Windows -> '10.0.17763'
// On Linux -> '4.15.0-45-generic'
注意: macOSでは、os.release()
とは異なり、カーネルバージョンではなく実際のオペレーティングシステムバージョンを返します。
process.takeHeapSnapshot(filePath)
filePath
string - 出力ファイルへのパス。
boolean
- スナップショットが正常に作成されたかどうかを示します。
V8ヒープスナップショットを取得し、filePath
に保存します。
process.hang()
現在のプロセスのメインスレッドをハングさせます。
process.setFdLimit(maxDescriptors)
macOS Linux
maxDescriptors
Integer
現在のプロセスのファイル記述子のソフトリミットを、maxDescriptors
またはOSのハードリミットのいずれか小さい方に設定します。