---
title: HTL_thread_scheduler_run_fn
description: "调度器运行函数原型。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengboostkithistory/2300/accel/kunpengaccel_ksl_16_0042.html
sourcePath: /source/zh/kunpengboostkithistory/2300/accel/kunpengaccel_ksl_16_0042.html
indexId: ffdc1d7a52d060fc9020814a6e35ecf7beb14be9901b6ff945a84b1162a720cd74
---
# HTL_thread_scheduler_run_fn

调度器运行函数原型。

#### 函数原型

typedef void* (*HTL_thread_scheduler_run_fn)(HTL_thread_scheduler_t);


#### 描述

调度器运行函数run()。run()运行调度器计划。用户可以自由设计此函数，包含以下属性：

- 调度循环：
  run()从与调度器关联的线程池中取出单元并运行它。

  调度器可以访问与调度器不关联的池。但是HTL假定其关联的池中无工作单元时，调度器为空闲，应该让给父级。

- 定期事件检查：
  run()定期调用HTL_thread_executor_check_event()。频率由用户定义的，但一些请求处理依赖HTL_thread_executor_check_event()的处理。

- 结束run()：
  run()定期调用HTL_thread_scheduler_stop()，如果返回true，则run()应立即返回。调用频率由用户定义的，但一些请求处理依赖于HTL_thread_scheduler_stop()的机制。


run()的调用者是与调度器关联的工作单元。如果sched是主调度器，则底层执行器在run()中保持不变。run()不是可选的，因此用户必须实现此功能。


#### 参数

| 类型 | 描述 | 输入/输出 |
| --- | --- | --- |
| HTL\_thread\_scheduler\_t | 调度器句柄。 | 输入 |


#### 返回值

- NULL：成功。
- 其他：失败。
