Mid*_*der 5 lua largenumber redis
我需要处理Lua中与Redis一起使用的大量数字.通常你会这样做:
require"bc"
bc.mul(...)
bc.mod(...)
Run Code Online (Sandbox Code Playgroud)
但不幸的是,Redis Lua不支持"要求".我发现的唯一方法是将用lua编写的大量库直接插入到脚本中.
我唯一可以得到这样的图书馆:oss.digirati.com.br/luabignum/index.htm
我可以为了具体的脚本而剥离库,但它仍然是巨大的.有没有办法更有效地处理Redis Lua中的大数字?
更新1:如果我将整个库保存到一个密钥然后访问它,如下所示:
local BigNumLib = KEYS[1];
BigNumLib.BigNum.mul(KEYS[2],KEYS[3]);
Run Code Online (Sandbox Code Playgroud)
我不确定语法,也许我需要将所有库都包含在lua表{}中.
我不熟悉 Redis 如何处理 Lua 代码,但为什么将库本身插入到代码中会出现问题?你应该能够做这样的事情:
local bc = function()
-- insert the code of BigNum.lua here
return BigNum
end
bc.mul(....)
Run Code Online (Sandbox Code Playgroud)
该代码可能是在 Lua 5.1 之前编写的,所以我不知道是否存在任何兼容性问题,但这至少应该给您一个开始。
| 归档时间: |
|
| 查看次数: |
294 次 |
| 最近记录: |