技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 查看专题: 静态数据
    如果你在同一个进程里有多个 lua state , 它们需要共享大量的只读数据, 那么可能就不希望在每个 state 启动的时候都加载和解析一遍这些数据. 所以我们需要一个共享只读数据的方法。 前段时间,我实现了一个 共享内存服务 ,这个可以保证共享内存的安全读写。不过,如果数据是只读的,那么就不需要这么复杂了。 我们只需要把数据加载到一个 lua state 中,其它的同一进程内的 state 通过 C 接口去读数据就可以了。 今天,我做了简单的实现,放在了 github 上。目前可以支持 nil number boolean function table 的数据交换。 function 交换有一些限制,不可以绑定 upvalue 。是用 string.dump 和 load 实现的。 table 类型返回的其实是一组 key ,需要继续用 get 来读取数据。
[ 共1篇文章 ][ 第1页/共1页 ][ 1 ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1