gpt4 book ai didi

c - `from`的 `lua_resume`参数的含义

转载 作者:太空狗 更新时间:2023-10-29 15:35:37 25 4
gpt4 key购买 nike

来自 Lua 5.2 Reference Manual :

int lua_resume (lua_State *L, lua_State *from, int nargs);

[...]

The parameter from represents the coroutine that is resuming L. If there is no such coroutine, this parameter can be NULL.

但这对我来说意义不大。它到底是做什么的?在什么情况下我必须传递 NULL 以外的任何值?

最佳答案

仅根据 source code 判断对于 5.2,from 似乎仅用于正确计算恢复期间嵌套 C 调用的数量。

L->nCcalls = (from) ? from->nCcalls + 1 : 1;

lua_assert(L->nCcalls == ((from) ? from->nCcalls : 0));

执行coroutine.resume似乎是这样使用的。

它使用正在恢复它的主线程的 from 值在协程线程上恢复协程。

status = lua_resume(co, L, narg);

关于c - `from`的 `lua_resume`参数的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26347022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com