# @ohos.process (获å–进程相关的信æ¯) 获å–进程相关的信æ¯ï¼Œæä¾›è¿›ç¨‹ç®¡ç†çš„相关功能。 > **说明:** > > 本模å—首批接å£ä»ŽAPI version 7开始支æŒã€‚åŽç»ç‰ˆæœ¬çš„æ–°å¢žæŽ¥å£ï¼Œé‡‡ç”¨ä¸Šè§’æ ‡å•ç‹¬æ ‡è®°æŽ¥å£çš„起始版本。 ## å¯¼å…¥æ¨¡å— ```ts import { process } from '@kit.ArkTS'; ``` ## 属性 **系统能力:** SystemCapability.Utils.Lang **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ | åç§° | 类型 | å¯è¯» | å¯å†™ | 说明 | | ---------------- | ------ | ---- | ---- | ---------------- | | uid | number | 是 | å¦ | è¿›ç¨‹çš„ç”¨æˆ·æ ‡è¯†ã€‚ | | pid | number | 是 | å¦ | 当å‰è¿›ç¨‹çš„pid。 | | tid<sup>8+</sup> | number | 是 | å¦ | 当å‰çº¿ç¨‹çš„tid。 | ## EventListener type EventListener = (evt: Object) => void 用户å˜å‚¨çš„事件 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | evt | Object | 是 | 用户事件。| ## process.isIsolatedProcess<sup>8+</sup> isIsolatedProcess(): boolean 判æ–进程是å¦è¢«éš”离。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **返回值:** | 类型 | 说明 | | ------- | ------------------------------------------------------- | | boolean | 返回判æ–结果,如果进程被隔离则返回true,å¦åˆ™è¿”回false。 | **示例:** ```js let result = process.isIsolatedProcess(); ``` ## process.is64Bit<sup>8+</sup> is64Bit(): boolean 判æ–è¿è¡ŒçŽ¯å¢ƒæ˜¯å¦64ä½ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **返回值:** | 类型 | 说明 | | ------- | ----------------------------------------------------------- | | boolean | 返回判æ–结果,如果è¿è¡ŒçŽ¯å¢ƒæ˜¯64ä½åˆ™è¿”回true,å¦åˆ™è¿”回false。 | **示例:** ```js let result = process.is64Bit(); ``` ## process.getStartRealtime<sup>8+</sup> getStartRealtime(): number 获å–从系统å¯åŠ¨åˆ°è¿›ç¨‹å¯åŠ¨æ‰€ç»è¿‡çš„实时时间(以毫秒为å•ä½ï¼‰ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **返回值:** | 类型 | 说明 | | ------ | ------------------------------ | | number | 返回ç»è¿‡çš„实时时间。å•ä½ï¼šæ¯«ç§’ | **示例:** ```js let realtime = process.getStartRealtime(); ``` ## process.getPastCpuTime<sup>8+</sup> getPastCpuTime(): number 获å–进程å¯åŠ¨åˆ°å½“å‰æ—¶é—´çš„CPU时间(以毫秒为å•ä½ï¼‰ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **返回值:** | 类型 | 说明 | | ------ | ----------------------------- | | number | 返回ç»è¿‡çš„CPU时间。å•ä½ï¼šæ¯«ç§’ | **示例:** ```js let result = process.getPastCpuTime() ; ``` ## process.abort abort(): void 该方法会导致进程立å³é€€å‡ºå¹¶ç”Ÿæˆä¸€ä¸ªæ ¸å¿ƒæ–‡ä»¶ï¼Œè°¨æ…Žä½¿ç”¨ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **示例:** ```js process.abort(); ``` ## process.uptime uptime(): number 获å–当å‰ç³»ç»Ÿå·²è¿è¡Œçš„秒数。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **返回值:** | 类型 | 说明 | | ------ | ---------------------- | | number | 当å‰ç³»ç»Ÿå·²è¿è¡Œçš„秒数。 | **示例:** ```js let time = process.uptime(); ``` ## process.kill<sup>(deprecated)</sup> kill(signal: number, pid: number): boolean å‘é€signalåˆ°æŒ‡å®šçš„è¿›ç¨‹ï¼Œç»“æŸæŒ‡å®šè¿›ç¨‹ã€‚ > **说明:** > > 从API version 7开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[kill<sup>9+</sup>](#kill9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------------ | | signal | number | 是 | å‘é€çš„ä¿¡å·ã€‚ | | pid | number | 是 | 进程的id。 | **返回值:** | 类型 | 说明 | | ------- | ------------------------------------------------------------ | | boolean | ä¿¡å·æ˜¯å¦å‘逿ˆåŠŸã€‚å¦‚æžœä¿¡å·å‘逿ˆåŠŸåˆ™è¿”å›žtrue,å¦åˆ™è¿”回false。 | **示例:** ```js let pres = process.pid let result = process.kill(28, pres) ``` ## process.exit<sup>(deprecated)</sup> exit(code: number): void 终æ¢ç¨‹åºã€‚ è¯·è°¨æ…Žä½¿ç”¨æ¤æŽ¥å£ï¼Œæ¤æŽ¥å£è°ƒç”¨åŽåº”用会退出,如果入å‚éž0会产生数æ®ä¸¢å¤±æˆ–者异常情况。 > **说明:** > > 从API version 7开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[exit<sup>9+</sup>](#exit9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------------- | | code | number | 是 | 进程的退出ç 。 | **示例:** ```js process.exit(0); ``` ## process.getUidForName<sup>(deprecated)</sup> getUidForName(v: string): number æ ¹æ®æŒ‡å®šçš„用户å,从系统的用户数æ®åº“ä¸èŽ·å–该用户uid。 > **说明:** > > 从API version 8开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[getUidForName<sup>9+</sup>](#getuidforname9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------- | | v | string | 是 | 用户å。 | **返回值:** | 类型 | 说明 | | ------ | ------------- | | number | 返回用户uid。 | **示例:** ```js let pres = process.getUidForName("tool") ``` ## process.getThreadPriority<sup>(deprecated)</sup> getThreadPriority(v: number): number æ ¹æ®æŒ‡å®šçš„tid获å–线程优先级。 > **说明:** > > 从API version 8开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[getThreadPriority<sup>9+</sup>](#getthreadpriority9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | v | number | 是 | 指定的线程tid。 | **返回值:** | 类型 | 说明 | | ------ | ------------------------------------------------ | | number | 返回线程的优先级。优先级顺åºå–å†³äºŽå½“å‰æ“作系统。 | **示例:** ```js let tid = process.tid; let pres = process.getThreadPriority(tid); ``` ## process.isAppUid<sup>(deprecated)</sup> isAppUid(v: number): boolean 判æ–uid是å¦å±žäºŽåº”用程åºã€‚ > **说明:** > > 从API version 8开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[isAppUid<sup>9+</sup>](#isappuid9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | v | number | 是 | 应用程åºçš„uid。 | **返回值:** | 类型 | 说明 | | ------- | ------------------------------------------------------------ | | boolean | 返回判æ–结果,如果是应用程åºçš„uid则返回true,å¦åˆ™è¿”回false。 | **示例:** ```js let result = process.isAppUid(688); ``` ## process.getSystemConfig<sup>(deprecated)</sup> getSystemConfig(name: number): number 获å–系统é…置信æ¯ã€‚ > **说明:** > > 从API version 8开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[getSystemConfig<sup>9+</sup>](#getsystemconfig9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------------------- | | name | number | 是 | 指定系统é…ç½®å‚æ•°å。 | **返回值:** | 类型 | 说明 | | ------ | ------------------ | | number | 返回系统é…置信æ¯ã€‚ | **示例:** ```js let _SC_ARG_MAX = 0 let pres = process.getSystemConfig(_SC_ARG_MAX) ``` ## process.getEnvironmentVar<sup>(deprecated)</sup> getEnvironmentVar(name: string): string 获å–环境å˜é‡å¯¹åº”的值。 > **说明:** > > 从API version 8开始支æŒï¼Œä»ŽAPI version 9开始废弃,建议使用[getEnvironmentVar<sup>9+</sup>](#getenvironmentvar9)替代。 **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------------ | | name | string | 是 | 环境å˜é‡å。 | **返回值:** | 类型 | 说明 | | ------ | --------------------------- | | string | 返回环境å˜é‡å对应的value。 | **示例:** ```js let pres = process.getEnvironmentVar("PATH") ``` ## ProcessManager<sup>9+</sup> æä¾›ç”¨äºŽæ–°å¢žè¿›ç¨‹çš„æŠ›å¼‚常接å£ã€‚ é€šè¿‡è‡ªèº«çš„æž„é€ æ¥èŽ·å–ProcessManager对象。 ### isAppUid<sup>9+</sup> isAppUid(v: number): boolean 判æ–uid是å¦å±žäºŽå½“å‰åº”用程åºã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | v | number | 是 | 应用程åºçš„uid。å¯é€šè¿‡process.uidèŽ·å– | **返回值:** | 类型 | 说明 | | ------- | ------------------------------------------------------------ | | boolean | 返回判æ–结果,如果是应用程åºçš„uid则返回true,å¦åˆ™è¿”回false。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); // uid通过process.uidèŽ·å– let pres = process.uid; let result = pro.isAppUid(pres); console.log("result: " + result); // result: true ``` ### getUidForName<sup>9+</sup> getUidForName(v: string): number æ ¹æ®æŒ‡å®šçš„用户å,从系统的用户数æ®åº“ä¸èŽ·å–该用户uid。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------- | | v | string | 是 | 用户å。 | **返回值:** | 类型 | 说明 | | ------ | ------------- | | number | 返回用户uid,当获å–的用户ä¸å˜åœ¨æ—¶ï¼Œè¿”回-1。| **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); let pres = pro .getUidForName("tool"); ``` ### getThreadPriority<sup>9+</sup> getThreadPriority(v: number): number æ ¹æ®æŒ‡å®šçš„tid获å–线程优先级。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | --------------- | | v | number | 是 | 指定的线程tid。 | **返回值:** | 类型 | 说明 | | ------ | ------------------------------------------------ | | number | 返回线程的优先级。优先级顺åºå–å†³äºŽå½“å‰æ“作系统。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); let tid = process.tid; let pres = pro.getThreadPriority(tid); ``` ### getSystemConfig<sup>9+</sup> getSystemConfig(name: number): number 获å–系统é…置信æ¯ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------------------- | | name | number | 是 | 指定系统é…ç½®å‚æ•°å。 | **返回值:** | 类型 | 说明 | | ------ | ------------------ | | number | 返回系统é…置信æ¯ï¼Œå½“获å–的系统é…ç½®ä¸å˜åœ¨æ—¶ï¼Œè¿”回-1。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); let _SC_ARG_MAX = 0; let pres = pro.getSystemConfig(_SC_ARG_MAX); ``` ### getEnvironmentVar<sup>9+</sup> getEnvironmentVar(name: string): string 获å–环境å˜é‡å¯¹åº”的值。 > **说明:** > > è¯¥æŽ¥å£æ˜¯èŽ·å–环境å˜é‡å¯¹åº”的值。当环境å˜é‡ä¸å˜åœ¨æ—¶ï¼Œè¿”回undefined。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------------ | | name | string | 是 | 环境å˜é‡å。 | **返回值:** | 类型 | 说明 | | ------ | ------------------------ | | string | 返回环境å˜é‡å对应的值。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); let pres = pro.getEnvironmentVar("PATH"); ``` ### exit<sup>9+</sup> exit(code: number): void 终æ¢ç¨‹åºã€‚ è¯·è°¨æ…Žä½¿ç”¨æ¤æŽ¥å£ï¼Œæ¤æŽ¥å£è°ƒç”¨åŽåº”用会退出,如果入å‚éž0会产生数æ®ä¸¢å¤±æˆ–者异常情况。 **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | -------------- | | code | number | 是 | 进程的退出ç 。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); pro.exit(0); ``` ### kill<sup>9+</sup> kill(signal: number, pid: number): boolean å‘é€signalåˆ°æŒ‡å®šçš„è¿›ç¨‹ï¼Œç»“æŸæŒ‡å®šè¿›ç¨‹ã€‚ **原å化æœåŠ¡API:** 从API version 11 å¼€å§‹ï¼Œè¯¥æŽ¥å£æ”¯æŒåœ¨åŽŸå化æœåŠ¡ä¸ä½¿ç”¨ã€‚ **系统能力:** SystemCapability.Utils.Lang **傿•°ï¼š** | 傿•°å | 类型 | å¿…å¡« | 说明 | | ------ | ------ | ---- | ------------ | | signal | number | 是 | å‘é€ç‰¹å®šçš„ä¿¡å·ç»™ç›®æ ‡è¿›ç¨‹ã€‚ | | pid | number | 是 | 进程的id。 | **返回值:** | 类型 | 说明 | | ------- | ------------------------------------------------------------ | | boolean | ä¿¡å·æ˜¯å¦å‘逿ˆåŠŸã€‚å¦‚æžœä¿¡å·å‘逿ˆåŠŸåˆ™è¿”å›žtrue,å¦åˆ™è¿”回false。 | **错误ç :** 以下错误ç 的详细介ç»è¯·å‚è§[通用错误ç ](../errorcode-universal.md)。 | 错误ç ID | é”™è¯¯ä¿¡æ¯ | | -------- | -------- | | 401 | Parameter error. Possible causes: 1. Mandatory parameters are left unspecified; 2. Incorrect parameter types. | **示例:** ```js let pro = new process.ProcessManager(); let pres = process.pid; let result = pro.kill(28, pres); ```