34 lines
1.4 KiB
Markdown
34 lines
1.4 KiB
Markdown
![]() |
# aimrt.guard_thread
|
|||
|
|
|||
|
## 配置项概述
|
|||
|
|
|||
|
守护线程是 AimRT 在启动时会额外启动的一个线程,详情可参考[AimRT 核心设计理念](../concepts/core_design.md)。
|
|||
|
|
|||
|
|
|||
|
`aimrt.guard_thread`配置项用于配置守护线程。其中的细节配置项说明如下:
|
|||
|
|
|||
|
| 节点 | 类型 | 是否可选| 默认值 | 作用 |
|
|||
|
| ---- | ---- | ---- | ---- | ---- |
|
|||
|
| name | string | 可选 | "aimrt_guard" | 守护线程名称 |
|
|||
|
| thread_sched_policy | string | 可选 | "" | 线程调度策略 |
|
|||
|
| thread_bind_cpu | unsigned int array | 可选 | [] | 绑核配置 |
|
|||
|
| queue_threshold | unsigned int | 可选 | 10000 | 队列任务上限 |
|
|||
|
|
|||
|
`aimrt.guard_thread`使用注意点如下:
|
|||
|
- `name`配置了守护线程名称,在实现时调用了操作系统的一些 API。如果操作系统不支持,则此项配置无效。
|
|||
|
- `thread_sched_policy`和`thread_bind_cpu`参考[Common Information](./common.md)中线程绑核配置的说明。
|
|||
|
- `queue_threshold`配置了队列任务上限,当已经有超过此阈值的任务在队列中时,新任务将投递失败。
|
|||
|
|
|||
|
|
|||
|
## 使用示例
|
|||
|
|
|||
|
以下是一个简单的示例:
|
|||
|
```yaml
|
|||
|
aimrt:
|
|||
|
guard_thread:
|
|||
|
name: guard_thread
|
|||
|
thread_sched_policy: SCHED_FIFO:80
|
|||
|
thread_bind_cpu: [0, 1]
|
|||
|
queue_threshold: 10000
|
|||
|
```
|