awtk/docs/manual/async_t.md

94 lines
2.6 KiB
Markdown
Raw Normal View History

2020-03-17 10:48:59 +08:00
## async\_t
### 概述
2021-08-03 09:33:32 +08:00
在后台线程执行指定函数不会阻塞UI线程。
2020-03-17 10:48:59 +08:00
----------------------------------
### 函数
<p id="async_t_methods">
| 函数名称 | 说明 |
| -------- | ------------ |
| <a href="#async_t_async_call">async\_call</a> | 异步执行exec函数执行完成后在后台线程调用on_result函数。 |
| <a href="#async_t_async_call_deinit">async\_call\_deinit</a> | 全局~初始化。 |
2021-10-13 09:51:38 +08:00
| <a href="#async_t_async_call_init_ex">async\_call\_init\_ex</a> | 全局初始化。 |
2022-12-05 12:10:53 +08:00
| <a href="#async_t_async_call_init_ex2">async\_call\_init\_ex2</a> | 全局初始化。 |
2020-03-17 10:48:59 +08:00
#### async\_call 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call">异步执行exec函数执行完成后在后台线程调用on_result函数。
* 函数原型:
```
ret_t async_call (async_exec_t exec, async_on_result_t on_result, void* ctx);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| exec | async\_exec\_t | 需要异步支持的函数。 |
| on\_result | async\_on\_result\_t | 返回执行结果(可选) |
| ctx | void* | 两个回调函数的上下文。 |
#### async\_call\_deinit 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call_deinit">全局~初始化。
* 函数原型:
```
ret_t async_call_deinit ();
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
2021-10-13 09:51:38 +08:00
#### async\_call\_init\_ex 函数
2020-03-17 10:48:59 +08:00
-----------------------
* 函数功能:
2021-10-13 09:51:38 +08:00
> <p id="async_t_async_call_init_ex">全局初始化。
2020-03-17 10:48:59 +08:00
* 函数原型:
```
2021-10-13 09:51:38 +08:00
ret_t async_call_init_ex (uint32_t max_threads, uint32_t min_threads);
2020-03-17 10:48:59 +08:00
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
2021-10-13 09:51:38 +08:00
| max\_threads | uint32\_t | 最大线程数。 |
2023-06-29 10:44:29 +08:00
| min\_threads | uint32\_t | 最小线程数(必须大于0)。 |
2022-12-05 12:10:53 +08:00
#### async\_call\_init\_ex2 函数
-----------------------
* 函数功能:
> <p id="async_t_async_call_init_ex2">全局初始化。
* 函数原型:
```
ret_t async_call_init_ex2 (uint32_t max_threads, uint32_t min_threads, uint32_t stack_size);
```
* 参数说明:
| 参数 | 类型 | 说明 |
| -------- | ----- | --------- |
| 返回值 | ret\_t | 返回RET\_OK表示成功否则表示失败。 |
| max\_threads | uint32\_t | 最大线程数。 |
2023-06-29 10:44:29 +08:00
| min\_threads | uint32\_t | 最小线程数(必须大于0)。 |
2022-12-05 12:10:53 +08:00
| stack\_size | uint32\_t | 栈空间大小(字节)。 |