0

我正在尝试创建多线程观察程序,它尝试检查主机名。简单的代码展示了一般的想法。但是当我在线程工作者中调用 sock.dns.toip 时,我得到了奇怪的脚本行为。工人不执行。如果我从工作人员中排除套接字代码,则一切正常。

如何在线程工作者中运行 socket.dns.toip?

local lanes = require "lanes".configure()
local linda = lanes.linda()


local function resolver(name)
    while true do
        local socket = assert(require "socket")
        local _, resolve = socket.dns.toip(string.format("%s.", "www.google.com"))
        print('resolver[' .. name ..']')
    end
end

lanes.gen("", resolver)('a')
os.execute("sleep 0.1")
4

0 回答 0