Khi tôi sử dụng kịch bản sau đây:Luasocket + nginx lỗi - lua nhập chủ đề hủy bỏ: lỗi runtime: nỗ lực để mang lại trên ranh giới C gọi
local smtp = require("socket.smtp")
local from = "[email protected]"
local rcpt = "[email protected]"
local msg = {
headers = {
to = rcpt,
subject = "Hi"
},
body = "Hello"
}
smtp.send{from = from,rcpt = rcpt,source = smtp.message(msg)}
tôi nhận được một thông báo lỗi: lua entry thread aborted: runtime error: attempt to yield across C-call boundary
.
Tôi đang sử dụng luasocket
mới nhất được cài đặt từ luarocks
với Lua 5.1 bằng nginx được biên dịch bằng LuaJIT 2.1. Điều gì gây ra thông báo lỗi này và cách khắc phục sự cố này?
Bạn có ví dụ đầy đủ chúng ta có thể cắm vào 'content_by_lua_file' để xem vị trí không thành công? Liệu nó có thất bại trên dòng 'smtp.send' hoặc' require' không? Tôi nghi ngờ đó là trước đây, nhưng muốn xác nhận. –
Đó là khá nhiều ví dụ đầy đủ. Nó không thành công trên chức năng gửi. – arby