如何使用 duk_pcall 多次 运行 整个 js 文件?

How to run a whole js files multiple times using duk_pcall?

我想用duk_pcall来做,这是我试过的:

但是当我第二次尝试使用duk_pcall时,我失败了。

你能给我一些正确的建议吗?

duk_pcompile_string 将结果放在 TOS 上,duk_pcall 执行 TOS(+ 最终参数)并将所有这些替换为调用的 return 值。

为了使该函数可多次调用,您必须 duplicate the TOS 插入所需的参数,然后使用 pcall 调用它。调用后从堆栈中删除结果。原来的功能现在应该再次出现在 TOS 中。重新开始这段写的,再调用。