HTL_thread_free
释放线程。
接口定义
int HTL_thread_free(HTL_thread_t *thread);
描述
HTL_thread_free()用于释放轻量级线程ULT的thread资源,并将thread设置为HTL_THREAD_NULL。如果thread仍在运行,则此例程将在thread上阻塞,直到thread终止。
由于未命名的ULT将在终止后立即释放,因此无需通过此例程释放未命名的ULT。此例程无法释放主ULT或主调度器的ULT。只有一个调用者可以加入或释放同一ULT。
参数
参数名 |
类型 |
描述 |
输入/输出 |
---|---|---|---|
thread |
HTL_thread_t * |
线程句柄的地址。 |
输入/输出 |
返回值
- 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]); }
父主题: 线程函数