---
title: HTL_thread_join
description: "阻塞等待线程结束并获取返回值。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengaccel/system-lib/htl/kunpengaccel_ksl_16_0087.html
sourcePath: /source/zh/kunpengaccel/system-lib/htl/kunpengaccel_ksl_16_0087.html
indexId: fe090d10bc4587a3ead44ccd5c7da24e91d19ddd3f25f69abe77cbcb3a98802c68
---
# HTL_thread_join

阻塞等待线程结束并获取返回值。

#### 接口定义

int HTL_thread_join(HTL_thread_t *thread, void **thread_return);


#### 描述

HTL_thread_join()用于等待线程thread终止，并通过thread_return获取线程执行完成的返回值。


#### 参数

| 参数名 | 类型 | 描述 | 输入/输出 |
| --- | --- | --- | --- |
| thread | HTL\_thread\_t \* | 线程句柄地址。 | 输入 |
| thread\_return | void \*\* | 线程执行返回值。 | 输出 |


#### 返回值

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


#### 示例

```
/* Create Thread */
    for (i = 0; i < num_threads; i++) {
        arg[i] = i;
        ret = HTL_thread_create(&threads[i], NULL, thread_create, &arg[i]);
    }

    /* Join and free ULTs */
    for (i = 0; i < num_threads; i++) {
        void* retval;
        ret = HTL_thread_join(&threads[i], &retval);
        ret = HTL_thread_free(&threads[i]);
    }
```
