鸿蒙5.0开发进阶:编译构建-Hvigor守护进程

往期鸿蒙5.0全套实战文章必看:(文中附带全栈鸿蒙5.0学习资料)


Hvigor守护进程

守护进程是作为后台进程运行而不是在交互式用户的直接控制下运行的计算机程序。Hvigor守护进程是一个持续存在的后台进程,可以减少运行构建所需的时间。

了解守护进程

Hvigor客户端发送Daemon构建信息,如命令行参数、工程目录和环境变量等,以便于运行构建。客户端和守护进程之间的通信通过本地套接字进行连接,正在运行守护进程同时最多开启8个,状态为非停止或中断的守护进程最多开启6个。

启用禁用守护进程

Hvigor默认启用守护进程,您也可以通过以下几种方式来控制是否启用守护进程:

  • 执行命令:
    // 启用守护进程
    hvigorw <task> --daemon
    // 关闭守护进程
    hvigorw <task> --no-daemon
  • hvigor-config.json5中配置execution.daemon选项。
  • 点击File > Settings > Build, Execution, Deployment > Build Tools > Hvigor,勾选或去勾选字段Enable the Daemon for tasks

设置守护进程内存

守护进程默认内存是8192 MB,对绝大多数构建来说已经足够了。如果您想自定义守护进程的内存,可以通过以下两种方式修改,建议您参考本地剩余内存进行调整设置。其中命令行方式优先级高于hvigor-config.json5配置文件。

  • 修改hvigor-config.json5文件中的nodeOptions.maxOldSpaceSize配置。
  • 执行命令修改守护进程内存,示例如下:
    hvigorw assembleHap --max-old-space-size=12345

检查守护进程状态

如果您想获取正在运行的守护进程及其状态的列表,可以使用以下命令查看:

hvigorw --status-daemon
> hvigor PID    STATUS  PORT    ROOT_PATH
> hvigor 11072  idle    45001   D:\Demo1
> hvigor 18836  stopped 45000   D:\Demo2
表1 守护进程的状态

守护进程状态

状态描述

idle

闲置

half_busy

半忙碌

busy

忙碌

canceled

取消

stopReq

停止请求

stopped

停止

broken

中断

停止守护进程

在更改关于守护进程内存设置或调试故障时,重启守护进程是必要的。

您可用以下命令停止运行守护进程,这将停止该工程下的守护进程:

hvigorw --stop-daemon

如果您想停止所有守护进程,您可以使用以下命令:

hvigorw --stop-daemon-all

性能影响

当您重复构建同一项目时,守护进程可以将构建时间缩短。多次构建时,守护进程只会将hvigor一次性加载到内存中,而不是每一次构建。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值