我正在 lua c 中创建一个线程,但我想将其保留在 C 中,而不是使其成为环境/等中的变量。但是当我丢弃由 lua_newthread 推送的线程值时,它很快就会被垃圾收集,因此变得无用。在这个线程中,我想运行用户传递的任意 lua 代码,允许他们使用与其他线程隔离的专有函数/变量。
有没有办法将线程/用户数据/表值标记为不可回收?
我正在 lua c 中创建一个线程,但我想将其保留在 C 中,而不是使其成为环境/等中的变量。但是当我丢弃由 lua_newthread 推送的线程值时,它很快就会被垃圾收集,因此变得无用。在这个线程中,我想运行用户传递的任意 lua 代码,允许他们使用与其他线程隔离的专有函数/变量。
有没有办法将线程/用户数据/表值标记为不可回收?