2016-05-31 07:14:56 +00:00
|
|
|
# process
|
2015-06-25 17:32:51 +00:00
|
|
|
|
2016-05-31 07:14:56 +00:00
|
|
|
> process 객체에 대한 확장 기능.
|
2016-04-30 16:53:21 +00:00
|
|
|
|
2016-05-31 07:14:56 +00:00
|
|
|
`process` 객체는 Electron에서 약간 추가적인 기능이 있으며 API는 다음과 같습니다:
|
2015-06-25 17:32:51 +00:00
|
|
|
|
2015-10-06 04:48:39 +00:00
|
|
|
## Events
|
|
|
|
|
|
|
|
### Event: 'loaded'
|
|
|
|
|
2015-11-19 19:46:05 +00:00
|
|
|
Electron 내부 초기화 스크립트의 로드가 완료되고, 웹 페이지나 메인 스크립트를 로드하기
|
|
|
|
시작할 때 발생하는 이벤트입니다.
|
2015-10-06 04:48:39 +00:00
|
|
|
|
2015-11-19 19:46:05 +00:00
|
|
|
이 이벤트는 preload 스크립트를 통해 node 통합이 꺼져있는 전역 스코프에 node의 전역
|
|
|
|
심볼들을 다시 추가할 때 사용할 수 있습니다:
|
2015-10-06 04:48:39 +00:00
|
|
|
|
|
|
|
```javascript
|
|
|
|
// preload.js
|
2016-05-10 07:27:14 +00:00
|
|
|
const _setImmediate = setImmediate;
|
|
|
|
const _clearImmediate = clearImmediate;
|
2016-05-10 18:14:06 +00:00
|
|
|
process.once('loaded', () => {
|
2015-10-06 10:53:35 +00:00
|
|
|
global.setImmediate = _setImmediate;
|
|
|
|
global.clearImmediate = _clearImmediate;
|
2015-10-06 04:48:39 +00:00
|
|
|
});
|
|
|
|
```
|
|
|
|
|
2015-12-02 15:21:34 +00:00
|
|
|
## Properties
|
|
|
|
|
|
|
|
### `process.noAsar`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
이 속성을 `true`로 지정하면 Node 빌트인 모듈의 `asar` 아카이브 지원을 비활성화 시킬
|
|
|
|
수 있습니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.type`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
현재 프로세스의 종류입니다. `"browser"` (메인 프로세스) 또는 `"renderer"`가 될 수
|
|
|
|
있습니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.versions.electron`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
Electron의 버전 문자열입니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.versions.chrome`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
Chrome의 버전 문자열입니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.resourcesPath`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
리소스 디렉토리의 경로입니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.mas`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
Mac App Store 빌드에선 이 속성이 `true`가 됩니다. 다른 빌드에선 `undefined`가 됩니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.windowsStore`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
애플리케이션이 Windows Store 앱 (appx) 형태로 작동하고 있을 경우 이 속성이 `true`가
|
|
|
|
됩니다. 그렇지 않은 경우 `undefined`가 됩니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.defaultApp`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
애플리케이션이 기본 어플리케이션 형식으로 전달되는 인수와 함께 실행됐을 때, 메인
|
|
|
|
프로세스에서 이 속성이 `true`가 되며 다른 경우엔 `undefined`가 됩니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
## Methods
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
`process` 객체는 다음과 같은 메서드를 가지고 있습니다:
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.crash()`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
현재 프로세스의 메인 스레드에 크래시를 일으킵니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.hang()`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
현재 프로세스의 메인 스레드를 중단시킵니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
2016-06-18 13:26:26 +00:00
|
|
|
### `process.setFdLimit(maxDescriptors)` _macOS_ _Linux_
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
* `maxDescriptors` Integer
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
현재 프로세스 파일 디스크립터의 제한 값을 소프트 제한 `maxDescriptors`의 값이나 OS
|
|
|
|
하드 제한 중 낮은 값으로 설정합니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.getProcessMemoryInfo()`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
현재 프로세스의 메모리 사용량에 대한 정보를 객체 형태로 반환합니다. 참고로 모든 사용량은
|
|
|
|
킬로바이트로 표기됩니다.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
* `workingSetSize` Integer - 현재 실제 물리적 RAM에 예약된 메모리의 양.
|
|
|
|
* `peakWorkingSetSize` Integer - 물리적 RAM에 예약된 메모리의 최대 사용량.
|
|
|
|
* `privateBytes` Integer - 다른 프로세스에 공유되지 않은 JS 힙 또는 HTML 콘텐츠와
|
|
|
|
같은 메모리의 양.
|
|
|
|
* `sharedBytes` Integer - 다른 프로세스와 공유된, 일반적으로 Electron 코드 자체에서
|
|
|
|
사용하는 메모리의 양.
|
2016-05-31 07:14:56 +00:00
|
|
|
|
|
|
|
### `process.getSystemMemoryInfo()`
|
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
전체 시스템의 메모리 사용량에 대한 정보를 객체 형태로 반환합니다. 참고로 모든 사용량은
|
|
|
|
킬로바이트로 표기됩니다.
|
2015-09-01 00:57:43 +00:00
|
|
|
|
2016-09-15 16:27:10 +00:00
|
|
|
* `total` Integer - 시스템에서 사용할 수 있는 킬로바이트 단위의 전체 물리적 메모리의
|
|
|
|
양.
|
|
|
|
* `free` Integer - 애플리케이션이나 디스크 캐시로 사용되지 않은 메모리의 양.
|
|
|
|
* `swapTotal` Integer - 시스템에서 사용할 수 있는 킬로바이트 단위의 스왑 메모리
|
|
|
|
전체 양. _Windows_ _Linux_
|
|
|
|
* `swapFree` Integer - 시스템에서 사용할 수 있는 킬로 바이트 단위의 사용되지 않은
|
|
|
|
스왑 메모리의 양. _Windows_ _Linux_
|