Lua / 协程 如何测量标准函数占用的内存
2020-2-21 23:54:25
收藏:0
阅读:152
评论:1
我目前正在尝试找到一种方法来返回一个静态值,该值表示标准函数占用的内存或其执行的时间(作为静态线程),我想过使用协程,但我无法制作任何工作原型,在此先感谢您的帮助!(:
点赞
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

Lua 函数
collectgarbage和字符串"count"作为参数返回一个数字,反映解释器当前使用的内存量。这里有一个链接提供示例和更多信息;我将在此重现例子:function memuse() local i = math.modf(collectgarbage("count") * 1024) return i end该函数返回当前 Lua 使用的内存量,以千字节为单位。
至于时间,最简单的方法是调用
os.time(),它返回当前系统时间。但请注意,它仅返回最接近的整数秒数。如果需要更高的精度,有几种选择:一种是使用io.popen进行系统调用以检索当前系统时间,其中包括非整数部分;或者实现一些与时间相关的 C/C++ 函数并从 Lua 中调用它们。我都用过,第二种方式产生了极高的精度,但为了简单起见,我只展示第一种方式。-- 函数名为 'tick' ,以检索当前 OS 时间。 function tick() local fil = assert(io.popen("date +%s.%N")) local str = fil:read("*all") return tonumber(str) endLua 文件处理程序——其中一个由
io.popen调用产生的——具有自己的析构函数,因此不需要显式关闭;但是,您可能想调用fil:close()进行垃圾回收和避免任何打开文件相关的错误。如果您想追求第二种更复杂的选项,我建议在 C++ 中创建一个定时器类,利用
chrono库检索系统时间。我不确定这两个函数对您有多大帮助,但我希望它们能有所帮助。