---
title: HTL_thread_executor_free
description: "释放执行器。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengaccel/system-lib/htl/kunpengaccel_ksl_16_0057.html
sourcePath: /source/zh/kunpengaccel/system-lib/htl/kunpengaccel_ksl_16_0057.html
indexId: 7beb900d0e847682e88f9437247767bff8bd324da89b7d4ce1c6232ed1e54acb68
---
# HTL_thread_executor_free

释放执行器。

#### 接口定义

int HTL_thread_executor_free(HTL_thread_executor_t *executor);


#### 描述

HTL_thread_executor_free()用于释放执行器executor的资源，并将executor设置为HTL_THREAD_EXECUTOR_NULL。如果executor仍在运行，则函数将被阻塞，直到executor终止。

该函数无法释放正在运行调用者的执行器和主执行器。HTL_thread_executor_join()和HTL_thread_executor_free()只能阻止同一executor上的一个调用者。


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| executor | HTL\_thread\_executor \* | 执行器句柄地址。 | 输入/输出 |


#### 返回值

- HTL_THREAD_SUCCESS：成功。
- 其他：失败。见错误码定义。


#### 示例

```
num_executors = NUM_EXECUTORS;
    HTL_thread_executor_t *executors;
    executors = (HTL_thread_executor_t *)malloc(sizeof(HTL_thread_executor_t) * num_executors);
    for (i = 1; i < num_executors; i++) {
        HTL_thread_executor_create_basic(HTL_THREAD_SCHEDULER_DEFAULT, 1, &g_pools[i],
            HTL_THREAD_SCHEDULER_CONFIG_NULL, &executors[i]);
    }
    for (i = 1; i < num_executors; i++) {
        HTL_thread_executor_free(&executors[i]);
    }
```
