差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 后一修订版 | 前一修订版 | ||
manual:reference:grammar:function:main_page [2023/03/23 17:09] – mikecovlee | manual:reference:grammar:function:main_page [2023/03/23 17:16] (当前版本) – mikecovlee | ||
---|---|---|---|
行 1: | 行 1: | ||
====== Covariant Script 函数 ====== | ====== Covariant Script 函数 ====== | ||
- | \\ | ||
- | |||
===== 6.1 定义 ===== | ===== 6.1 定义 ===== | ||
行 45: | 行 43: | ||
===== 6.3 协程(Coroutine) ===== | ===== 6.3 协程(Coroutine) ===== | ||
+ | |||
+ | // | ||
CovScript 函数可以转换为协程(Coroutine) | CovScript 函数可以转换为协程(Coroutine) | ||
行 54: | 行 54: | ||
更进一步说,线程是由调度器进行**抢占式调度**,在多 CPU 系统中会**并行**执行; | 更进一步说,线程是由调度器进行**抢占式调度**,在多 CPU 系统中会**并行**执行; | ||
- | 而协程是主动**让出(yield)**时间片,仅运行在单个 CPU 核心上,属于**协作式调度** | + | 而协程是主动**让出(yield)**时间片,仅运行在单个 CPU 核心上,属于**协作式调度** |
CovScript 协程是**堆栈式非对称协程(Stackful Asymmetric Coroutine)**: | CovScript 协程是**堆栈式非对称协程(Stackful Asymmetric Coroutine)**: | ||
行 76: | 行 76: | ||
<code bash> | <code bash> | ||
- | ~$ Launch coroutine | + | Launch coroutine |
- | ~$ Coroutine started | + | Coroutine started |
- | ~$ Resume coroutine | + | Resume coroutine |
- | ~$ Coroutine resumed | + | Coroutine resumed |
</ | </ | ||
更多协程相关的 API 可参考 [[manual: | 更多协程相关的 API 可参考 [[manual: |