0
因此,我有一些线程,我希望每隔一段时间传递一次称为复位的upvalue,以便重置每个线程的表值。然后我想关闭重置,直到表完成迭代通过其批次。然而,我没有成功关闭重置(reset = false)似乎并没有阻止它不断重置。火炬线程 - 在主线程和线程之间传输数据一次
for i = 1, n do
local reset = true
while true do
threads:addjob(
function()
if reset = true then f:reset(); reset = false; end
x,y = f:getBatch()
return x,y
end,
function(x,y)
-- do some stuff and trigger conditionMet = true if met
end
)
if conditionMet == true break end
end
end
这是上传__resetflag =真到每个线程的值?我似乎只得到这个执行的线程之一。 – mattdns
我刚刚将reset:addjob()放在一个循环中,直到所有这些都被重置。非常感谢。 – mattdns