c++ - 为嵌入式 Lua 设置超时

标签 c++ c lua

我在 C/C+= 应用程序中嵌入了 Lua。我希望能够设置一个超时值,以防止陷入可能导致无限循环(甚至需要无限时间才能完成的字符串搜索)的糟糕编写的脚本。

基本上,我希望能够设置一个时间间隔,如果脚本未能在该时间间隔结束时完成运行,我希望能够终止 Lua 脚本引擎(如果可能的话,优雅地)。

有人知道执行此操作的最佳实践方法吗?

最佳答案

控制脚本所用时间的一种方法是设置计数 Hook ,然后在 Hook 中引发错误。但如果脚本可以调用可能需要很长时间的 C 函数,这将不起作用。

关于c++ - 为嵌入式 Lua 设置超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4508147/

相关文章:

c - imageMagick 的 Plane2Cylinder 扭曲中是否有一个选项可以制作如下所示的图像?

sqlite - 如何在luasql中显示所有表名

c++ - 如何从 API 获取 leptonica 版本

c++ - 我应该在使用 CreateTexture2D 后在 ID3D10Device 接口(interface)上调用 Release 吗?为什么?

c++ - 错误 C1047 : Object file created with an older compiler than other objects

c++ - Arduino相当于VB WITH

c - 指向指针的指针的用途或目的 (C)

lua - 如何从 pastebin 访问原始私有(private)粘贴?

c++ - 将字母转换为整数,然后求字符串之和

java - 结构数组总是比数组结构快?