Lua循环优化 · 花生肉泥

关于大量字符串连接 (速度提升100倍)

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
a = os.clock()  
local s = ''  
for i=1,100000 do  
    s = s .. 'a'  
end  
b = os.clock()  
print(b-a)    -- 1.708秒  
  
a = os.clock()  
local s = ''  
local t = {}  
for i=1,100000 do  
    t[#t+1] = 'a'  
end  
s = table.concat(t,'')  
b = os.clock()  
print(b-a)    -- 0.011秒  

—|—

关于创建大量小size的表(大概速度提升1倍)

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
-- 创建大量小size表时,应该先填充好表的大小  
a = os.clock()  
for i=1,2000000 do  
    local a = {}  
    a[1] = 1;a[2] = 2;a[3] = 3  
end  
b = os.clock()  
print(b-a)    -- 1.361秒  
  
a = os.clock()  
for i=1,2000000 do  
    local a = {0,0,0}  
    a[1] = 1;a[2] = 2;a[3] = 3  
end  
b = os.clock()  
print(b-a)    -- 0.623秒  

—|—

糖果

糖果
LUA教程

如果不小心安装错 SQL Server 为 Evaluation 的版本,要小心当超过 180 天之后,系统就会无法正常使用了 这几天遇到一个蛮特别的案例,原本收到的问题是 “维护计划” 忽然无法使用,即便是里面没有任何的Task,都无法顺利地执行。但从对方所提供的错误消...… Continue reading

PLUM NIZ静电容键盘怎么样?

Published on September 25, 2020

程序员如何选择合适的机械键盘

Published on September 18, 2020