5

我想用Lua Lanes做一个多线程并记录所用的时间。这是代码:

require "lanes"

function performTest ()
    os.execute("testJson-mt.lua")
end

for i=1,10,1 do
    f= lanes.gen(performTest)
    a=f()
    startTime = os.time()
    print("ID "..a[1].." completed.")
    endTime = os.time()
    diff = os.difftime (endTime, startTime)
    print(i..","..os.date("%x %X",startTime)..","..os.date("%x %X",endTime)..","..startTime..","..endTime..","..diff)
end

但是,当我运行代码时,控制台返回错误:lua: testLanes.lua:4: attempt to index global 'os' (a nil value).

此错误代码指向这一行,其中os.execute("testJson-mt.lua"). 我不太明白这个错误。请指教。

注意:我使用Lua for Windows作为 IDE。

4

2 回答 2

7

默认情况下,lanes.gen不加载库,甚至不加载基础库。因此'*'作为第一个参数传递lanes.gen以获取os通道中的和其他模块。

于 2012-05-09T09:49:23.997 回答
1

你也可以这样做require "os"

于 2012-05-09T11:12:23.587 回答