下記のコードを試してください。これは、vs forループとグローバル変数とローカル変数を比較します。あなたのループ内でグローバル変数を使用するコスト伝える
私は(Luaの5.1.4で、彼らは5.3.2のために類似している)これらの番号を取得し、:もちろん
WG 9.16 100
WL 1.96 467
FG 4.93 186
FL 1.18 776
を、これらのコストループ内で実際の作業をすると希釈されます。
local N=1e8
t0=os.clock()
a = 0
while a < N do
a = a + 1
end
t1=os.clock()-t0
print("WG",t1,math.floor(t1/t1*100+0.5))
t0=os.clock()
local a = 0
while a < N do
a = a + 1
end
t2=os.clock()-t0
print("WL",t2,math.floor(t1/t2*100+0.5))
t0=os.clock()
b = 0
for i=1,N do
b = b + 1
end
t3=os.clock()-t0
print("FG",t3,math.floor(t1/t3*100+0.5))
t0=os.clock()
local b = 0
for i=1,N do
b = b + 1
end
t4=os.clock()-t0
print("FL",t4,math.floor(t1/t4*100+0.5))
出典
2016-04-29 12:27:41
lhf
遅いどのように遅い:ここ
コードはありますか?実行時間はどのようになっていますか? –
1分以上。すぐに投票しないでください。私の質問で何が間違っているか教えてください。 – LUCAS
まず最初に、Luaはそれをコピー・ペーストしませんl01 – warspyking