#Lua 的 xpcall 函数
xpcall (f, msgh [, arg1, ···])
说明
以保护模式调用函数 fn(arg1, ...),并将错误对象传递给错误消息处理器 msgh。保护模式意味着函数内部的任何错误都都不会被传播,而是会被捕获并返回。
参数
fn- 要调用的函数msgh- 错误消息处理器arg1, ...- 调用fn时的参数
返回值
- 成功时返回
true和fn的返回值 - 失败时返回
false
#示例
function demo1(x, y)
return x + y
end
function demo2()
error("出错了")
end
-- 消息处理器
function messageHandler(msg)
print(msg)
end
print(xpcall(demo1, messageHandler, 3, 7))
print(xpcall(demo2, messageHandler))