我有3个文件x.lua,y.lua和main.lua。这些文件执行一些数学运算(递增和递减数)。当我运行命令
lua main.lua
比
快得多 luac -o main.luac -s x.lua y.lua main.lua
请你帮我解释为什么字节码会变慢?
答案 0 :(得分:3)
我猜main.lua
dofile("x.lua")
或require"x"
与y.lua
相同。
在这种情况下,第二个表单会运行x.lua
和y.lua
两次。
答案 1 :(得分:1)
他们是非常不同的行动:
lua main.lua
:这样做
luac -o main.luac -s x.lua y.lua main.lua
:这样做:
编写文件(操作2)是一个缓慢的操作,涉及磁盘访问,转储内存块等;它将比执行某些字节码(操作1)慢得多,除非后者是计算密集型的。