说明
使用 chrome.processes
API 与浏览器的进程进行交互。
权限
processes
可用性
类型
Cache
属性
- liveSize
数值
已使用的缓存部分(以字节为单位)。
- size
数值
缓存的大小(以字节为单位)。
Process
属性
- cpu
number 可选
进程的最新 CPU 使用率测量值,以进程的所有线程使用的单个 CPU 核心总百分比表示。此值介于 0 到 CpuInfo.numOfProcessors*100 之间,在多线程进程中可能会超过 100%。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- cssCache
缓存(可选)
进程的 CSS 缓存的最新信息。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- id
数值
浏览器提供的进程的唯一 ID。
- imageCache
缓存(可选)
进程的映像缓存的最新信息。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- jsMemoryAllocated
number 可选
进程 JavaScript 已分配内存的最新测量值(以字节为单位)。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- jsMemoryUsed
number 可选
进程 JavaScript 内存用量的最新测量值(以字节为单位)。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- naclDebugPort
数值
Native Client 进程的调试端口。对于其他进程类型以及未启用调试功能的 NaCl 进程,该值为零。
- 网络
number 可选
进程网络使用情况的最新测量值,以每秒字节数为单位。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- osProcessId
数值
操作系统提供的进程 ID。
- privateMemory
number 可选
进程私有内存用量的最新测量值(以字节为单位)。仅在通过 onUpdatedWithMemory 或 getProcessInfo(使用 includeMemory 标志)的回调接收对象时可用。
- 个人资料
字符串
与进程关联的配置文件。
- scriptCache
缓存(可选)
进程的脚本缓存的最新信息。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- sqliteMemory
number 可选
进程的 SQLite 内存用量的最新测量值(以字节为单位)。仅在通过 onUpdated 或 onUpdatedWithMemory 的回调接收对象时可用。
- 任务
TaskInfo[]
表示在此进程上运行的任务的 TaskInfo 数组。
- 类型
进程的类型。
ProcessType
浏览器进程的类型。
枚举
“浏览器”
“renderer”
“扩展程序”
“通知”
“插件”
“worker”
已过时,永远不会返回。
"nacl"
“service_worker”
已过时,永远不会返回。
“实用程序”
“gpu”
“其他”
TaskInfo
属性
- tabId
number 可选
可选的标签页 ID(如果此任务表示在渲染器进程上运行的标签页)。
- title
字符串
任务的标题。
方法
getProcessIdForTab()
chrome.processes.getProcessIdForTab(
tabId: number,
callback?: function,
): Promise<number>
返回指定标签页的渲染器进程的 ID。
参数
- tabId
数值
要返回其渲染器进程 ID 的标签页的 ID。
- callback
函数 可选
callback
参数如下所示:(processId: number) => void
- processId
数值
相应标签页的渲染器进程的进程 ID。
-
返回
-
Promise<number>
仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
getProcessInfo()
chrome.processes.getProcessInfo(
processIds: number | number[],
includeMemory: boolean,
callback?: function,
): Promise<object>
检索每个指定进程 ID 的进程信息。
参数
- processIds
number | number[]
要返回进程信息的进程 ID 列表或单个进程 ID。空列表表示请求所有进程。
- includeMemory
布尔值
如果需要详细的内存用量,则为 True。请注意,收集内存使用情况信息会增加 CPU 使用量,因此仅应在需要时查询。
- callback
函数 可选
callback
参数如下所示:(processes: object) => void
- 进程
对象
一个
Process
对象的字典,其中包含每个所请求的进程(当前浏览器进程的实时子进程),按进程 ID 编制索引。需要随时间进行聚合的指标不会填充到每个 Process 对象中。
-
返回
-
Promise<object>
仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
terminate()
chrome.processes.terminate(
processId: number,
callback?: function,
): Promise<boolean>
终止指定的渲染器进程。相当于访问 about:crash,但不会更改标签页的网址。
参数
- processId
数值
要终止的进程的 ID。
- callback
函数 可选
callback
参数如下所示:(didTerminate: boolean) => void
- didTerminate
布尔值
如果成功终止进程,则为 true,否则为 false。
-
返回
-
Promise<boolean>
仅 Manifest V3 及更高版本支持 Promise,其他平台需要使用回调。
事件
onCreated
chrome.processes.onCreated.addListener(
callback: function,
)
每次创建进程时触发,提供相应的 Process 对象。
onExited
chrome.processes.onExited.addListener(
callback: function,
)
每次进程终止时触发,提供退出类型。
参数
- callback
函数
callback
参数如下所示:(processId: number, exitType: number, exitCode: number) => void
- processId
数值
- exitType
数值
- exitCode
数值
-
onUnresponsive
chrome.processes.onUnresponsive.addListener(
callback: function,
)
每次进程变得无响应时触发,提供相应的 Process 对象。
onUpdated
chrome.processes.onUpdated.addListener(
callback: function,
)
每次任务管理器更新其进程统计信息时触发,提供按进程 ID 编入索引的已更新进程对象字典。
参数
- callback
函数
callback
参数如下所示:(processes: object) => void
- 进程
对象
-
onUpdatedWithMemory
chrome.processes.onUpdatedWithMemory.addListener(
callback: function,
)
每次任务管理器更新其进程统计信息时触发,提供按进程 ID 编入索引的已更新进程对象字典。与 onUpdate 相同,但每个 Process 对象中还包含内存使用情况详细信息。请注意,收集内存使用情况信息会产生额外的 CPU 使用量,因此仅在需要时才应监听。
参数
- callback
函数
callback
参数如下所示:(processes: object) => void
- 进程
对象
-