• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# @ohos.process (获取进程相关的信息)
2
3> **说明:**
4>
5> 本模块首批接口从API version 7开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
6
7
8## 导入模块
9
10```
11import process from '@ohos.process';
12```
13
14
15## 属性
16
17**系统能力:** SystemCapability.Utils.Lang
18
19| 名称 | 类型 | 可读 | 可写 | 说明 |
20| -------- | -------- | -------- | -------- | -------- |
21| uid | number | 是 | 否 | 进程的用户标识。 |
22| pid | number | 是 | 否 | 当前进程的pid。 |
23| tid<sup>8+</sup> | number | 是 | 否 | 当前线程的tid。 |
24
25
26## EventListener
27
28系统能力: SystemCapability.Utils.Lang
29
30| 名称 | 说明 |
31| -------- | -------- |
32| EventListener&nbsp;=&nbsp;(evt: &nbsp;Object)&nbsp;=&gt;&nbsp;void | 用户存储的事件。 |
33
34
35## process.isIsolatedProcess<sup>8+</sup>
36
37isIsolatedProcess(): boolean
38
39判断进程是否被隔离。
40
41**系统能力:** SystemCapability.Utils.Lang
42
43**返回值:**
44
45| 类型 | 说明 |
46| -------- | -------- |
47| boolean | 返回判断结果,true表示进程被隔离,false表示未被隔离。|
48
49**示例:**
50
51```js
52let result = process.isIsolatedProcess();
53```
54
55
56## process.is64Bit<sup>8+</sup>
57
58is64Bit(): boolean
59
60判断运行环境是否64位。
61
62**系统能力:** SystemCapability.Utils.Lang
63
64**返回值:**
65
66| 类型 | 说明 |
67| -------- | -------- |
68| boolean | 返回判断结果,如果为64位环境返回true,否则返回false。|
69
70**示例:**
71
72```js
73let result = process.is64Bit();
74```
75
76
77## process.getStartRealtime<sup>8+</sup>
78
79getStartRealtime(): number
80
81获取从系统启动到进程启动所经过的实时时间(以毫秒为单位)。
82
83**系统能力:** SystemCapability.Utils.Lang
84
85**返回值:**
86
87| 类型 | 说明 |
88| -------- | -------- |
89| number | 返回经过的实时时间。单位:毫秒|
90
91**示例:**
92
93```js
94let realtime = process.getStartRealtime();
95```
96
97## process.getPastCpuTime<sup>8+</sup>
98
99getPastCpuTime(): number
100
101获取进程启动到当前时间的CPU时间(以毫秒为单位)。
102
103**系统能力:** SystemCapability.Utils.Lang
104
105**返回值:**
106
107| 类型 | 说明 |
108| -------- | -------- |
109| number | 返回经过的CPU时间。单位:毫秒|
110
111**示例:**
112
113```js
114let result = process.getPastCpuTime() ;
115```
116
117
118## process.abort
119
120abort(): void
121
122该方法会导致进程立即退出并生成一个核心文件,谨慎使用。
123
124**系统能力:** SystemCapability.Utils.Lang
125
126**示例:**
127
128```js
129process.abort();
130```
131
132
133## process.uptime
134
135uptime(): number
136
137获取当前系统已运行的秒数。
138
139**系统能力:** SystemCapability.Utils.Lang
140
141**返回值:**
142
143| 类型 | 说明 |
144| -------- | -------- |
145| number | 当前系统已运行的秒数。 |
146
147**示例:**
148
149```js
150let time = process.uptime();
151```
152
153
154## process.kill<sup>(deprecated)</sup>
155
156kill(signal: number, pid: number): boolean
157
158发送signal到指定的进程,结束指定进程。
159
160> **说明:**
161>
162> 从API version 7开始支持,从API version 9开始废弃,建议使用[kill<sup>9+</sup>](#kill9)替代。
163
164**系统能力:** SystemCapability.Utils.Lang
165
166**参数:**
167
168| 参数名 | 类型 | 必填 | 说明 |
169| -------- | -------- | -------- | -------- |
170| pid | number | 是 | 进程的id。 |
171| signal | number | 是 | 发送的信号。 |
172
173**返回值:**
174
175| 类型 | 说明 |
176| -------- | -------- |
177| boolean | 信号是否发送成功。 |
178
179**示例:**
180
181```js
182let pres = process.pid
183let result = process.kill(28, pres)
184```
185
186
187## process.exit<sup>(deprecated)</sup>
188
189exit(code: number): void
190
191终止程序。
192
193请谨慎使用此接口,此接口调用后应用会退出,如果入参非0会产生数据丢失或者异常情况。
194
195> **说明:**
196>
197> 从API version 7开始支持,从API version 9开始废弃,建议使用[exit<sup>9+</sup>](#exit9)替代。
198
199**系统能力:** SystemCapability.Utils.Lang
200
201**参数:**
202
203| 参数名 | 类型 | 必填 | 说明 |
204| -------- | -------- | -------- | -------- |
205| code | number | 是 | 进程的退出码。 |
206
207**示例:**
208
209```js
210process.exit(0);
211```
212
213
214## process.getUidForName<sup>(deprecated)</sup>
215
216getUidForName(v: string): number
217
218通过进程名获取进程uid。
219
220> **说明:**
221>
222> 从API version 8开始支持,从API version 9开始废弃,建议使用[getUidForName<sup>9+</sup>](#getuidforname9)替代。
223
224**系统能力:** SystemCapability.Utils.Lang
225
226**参数:**
227
228| 参数名 | 类型 | 必填 | 说明 |
229| -------- | -------- | -------- | -------- |
230| v | string | 是 | 进程名。 |
231
232**返回值:**
233
234| 类型 | 说明 |
235| -------- | -------- |
236| number | 返回进程uid。|
237
238**示例:**
239
240```js
241let pres = process.getUidForName("tool")
242```
243
244
245## process.getThreadPriority<sup>(deprecated)</sup>
246
247getThreadPriority(v: number): number
248
249根据指定的tid获取线程优先级。
250
251> **说明:**
252>
253> 从API version 8开始支持,从API version 9开始废弃,建议使用[getThreadPriority<sup>9+</sup>](#getthreadpriority9)替代。
254
255**系统能力:** SystemCapability.Utils.Lang
256
257**参数:**
258
259| 参数名 | 类型 | 必填 | 说明 |
260| -------- | -------- | -------- | -------- |
261| v | number | 是 | 指定的线程tid。 |
262
263**返回值:**
264
265| 类型 | 说明 |
266| -------- | -------- |
267| number | 返回线程的优先级。 |
268
269**示例:**
270
271```js
272let tid = process.tid;
273let pres = process.getThreadPriority(tid);
274```
275
276
277## process.isAppUid<sup>(deprecated)</sup>
278
279isAppUid(v: number): boolean
280
281判断uid是否属于应用程序。
282
283> **说明:**
284>
285> 从API version 8开始支持,从API version 9开始废弃,建议使用[isAppUid<sup>9+</sup>](#isappuid9)替代。
286
287**系统能力:** SystemCapability.Utils.Lang
288
289**参数:**
290
291| 参数名 | 类型 | 必填 | 说明 |
292| -------- | -------- | -------- | -------- |
293| v | number | 是 | 应用程序的uid。 |
294
295**返回值:**
296
297| 类型 | 说明 |
298| -------- | -------- |
299| boolean | 返回判断结果,如果为应用程序的uid返回true,否则返回false。|
300
301**示例:**
302
303```js
304let result = process.isAppUid(688);
305```
306
307
308## process.getSystemConfig<sup>(deprecated)</sup>
309
310getSystemConfig(name: number): number
311
312获取系统配置信息。
313
314> **说明:**
315>
316> 从API version 8开始支持,从API version 9开始废弃,建议使用[getSystemConfig<sup>9+</sup>](#getsystemconfig9)替代。
317
318**系统能力:** SystemCapability.Utils.Lang
319
320**参数:**
321
322| 参数名 | 类型 | 必填 | 说明 |
323| -------- | -------- | -------- | -------- |
324| name | number | 是 | 指定系统配置参数名。 |
325
326**返回值:**
327
328| 类型 | 说明 |
329| -------- | -------- |
330| number | 返回系统配置信息。 |
331
332**示例:**
333
334```js
335let _SC_ARG_MAX = 0
336let pres = process.getSystemConfig(_SC_ARG_MAX)
337```
338
339
340## process.getEnvironmentVar<sup>(deprecated)</sup>
341
342getEnvironmentVar(name: string): string
343
344获取环境变量对应的值。
345
346> **说明:**
347>
348> 从API version 8开始支持,从API version 9开始废弃,建议使用[getEnvironmentVar<sup>9+</sup>](#getenvironmentvar9)替代。
349
350**系统能力:** SystemCapability.Utils.Lang
351
352**参数:**
353
354| 参数名 | 类型 | 必填 | 说明 |
355| -------- | -------- | -------- | -------- |
356| name | string | 是 | 环境变量名。 |
357
358**返回值:**
359
360| 类型 | 说明 |
361| -------- | -------- |
362| string | 返回环境变量名对应的value。 |
363
364**示例:**
365
366```js
367let pres = process.getEnvironmentVar("PATH")
368```
369
370
371## ProcessManager<sup>9+</sup>
372
373提供用于新增进程的抛异常接口。
374
375通过自身的构造来获取ProcessManager对象。
376
377### isAppUid<sup>9+</sup>
378
379isAppUid(v: number): boolean
380
381判断uid是否属于当前应用程序。
382
383**系统能力:** SystemCapability.Utils.Lang
384
385**参数:**
386
387| 参数名 | 类型 | 必填 | 说明 |
388| -------- | -------- | -------- | -------- |
389| v | number | 是 | 应用程序的uid。 |
390
391**返回值:**
392
393| 类型 | 说明 |
394| -------- | -------- |
395| boolean | 返回判断结果,如果为应用程序的uid返回true,否则返回false。|
396
397**示例:**
398
399```js
400let pro = new process.ProcessManager();
401let result = pro.isAppUid(688);
402```
403
404
405### getUidForName<sup>9+</sup>
406
407getUidForName(v: string): number
408
409通过进程名获取进程uid。
410
411**系统能力:** SystemCapability.Utils.Lang
412
413**参数:**
414
415| 参数名 | 类型 | 必填 | 说明 |
416| -------- | -------- | -------- | -------- |
417| v | string | 是 | 进程名。 |
418
419**返回值:**
420
421| 类型 | 说明 |
422| -------- | -------- |
423| number | 返回进程uid。|
424
425**示例:**
426
427```js
428let pro = new process.ProcessManager();
429let pres = pro .getUidForName("tool");
430```
431
432
433### getThreadPriority<sup>9+</sup>
434
435getThreadPriority(v: number): number
436
437根据指定的tid获取线程优先级。
438
439**系统能力:** SystemCapability.Utils.Lang
440
441**参数:**
442
443| 参数名 | 类型 | 必填 | 说明 |
444| -------- | -------- | -------- | -------- |
445| v | number | 是 | 指定的线程tid。 |
446
447**返回值:**
448
449| 类型 | 说明 |
450| -------- | -------- |
451| number | 返回线程的优先级。 |
452
453**示例:**
454
455```js
456let pro = new process.ProcessManager();
457let tid = process.tid;
458let pres = pro.getThreadPriority(tid);
459```
460
461
462### getSystemConfig<sup>9+</sup>
463
464getSystemConfig(name: number): number
465
466获取系统配置信息。
467
468**系统能力:** SystemCapability.Utils.Lang
469
470**参数:**
471
472| 参数名 | 类型 | 必填 | 说明 |
473| -------- | -------- | -------- | -------- |
474| name | number | 是 | 指定系统配置参数名。 |
475
476**返回值:**
477
478| 类型 | 说明 |
479| -------- | -------- |
480| number | 返回系统配置信息。 |
481
482**示例:**
483
484```js
485let pro = new process.ProcessManager();
486let _SC_ARG_MAX = 0;
487let pres = pro.getSystemConfig(_SC_ARG_MAX);
488```
489
490
491### getEnvironmentVar<sup>9+</sup>
492
493getEnvironmentVar(name: string): string
494
495获取环境变量对应的值。
496
497**系统能力:** SystemCapability.Utils.Lang
498
499**参数:**
500
501| 参数名 | 类型 | 必填 | 说明 |
502| -------- | -------- | -------- | -------- |
503| name | string | 是 | 环境变量名。 |
504
505**返回值:**
506
507| 类型 | 说明 |
508| -------- | -------- |
509| string | 返回环境变量名对应的值。 |
510
511**示例:**
512
513```js
514let pro = new process.ProcessManager();
515let pres = pro.getEnvironmentVar("PATH");
516```
517
518
519### exit<sup>9+</sup>
520
521exit(code: number): void
522
523终止程序。
524
525请谨慎使用此接口,此接口调用后应用会退出,如果入参非0会产生数据丢失或者异常情况。
526
527**系统能力:** SystemCapability.Utils.Lang
528
529**参数:**
530
531| 参数名 | 类型 | 必填 | 说明 |
532| -------- | -------- | -------- | -------- |
533| code | number | 是 | 进程的退出码。 |
534
535**示例:**
536
537```js
538let pro = new process.ProcessManager();
539pro.exit(0);
540```
541
542
543### kill<sup>9+</sup>
544
545kill(signal: number, pid: number): boolean
546
547发送signal到指定的进程,结束指定进程。
548
549**系统能力:** SystemCapability.Utils.Lang
550
551**参数:**
552
553| 参数名 | 类型 | 必填 | 说明 |
554| -------- | -------- | -------- | -------- |
555| pid | number | 是 | 进程的id。 |
556| signal | number | 是 | 发送的信号。 |
557
558**返回值:**
559
560| 类型 | 说明 |
561| -------- | -------- |
562| boolean | 信号是否发送成功。 |
563
564**示例:**
565
566```js
567let pro = new process.ProcessManager();
568let pres = process.pid;
569let result = pro.kill(28, pres);
570```
571