Blitz Lua 常見問題

lua-users home
wiki

此頁面包含關於 BlitzLua 一系列的「常見問題」。

簡介

BlitzLua 是一個 Lua 執行時間環境,用 BlitzMAX 編寫而成,BlitzMAX 是一個快速且跨平台的 BASIC 編譯器,可用於 Windows 98/ME/2000/XP、MacOS X 和 Linux。

常見問題

為何不使用完整使用者資料?

一個經常出現的問題是,為何作者不使用「完整使用者資料」(而不是「輕量級使用者資料」),因此就不會提供直接對應的物件和自動記憶體管理(透過使用 __gc 元方法)?

原因是 BlitzMAX 的垃圾回收:「完整使用者資料」物件只能「存在於 Lua 端」-在 BlitzMAX 中沒有任何參考,可以防止物件被「垃圾回收」。此外,沒有任何直接方法可以從 BlitzMAX 傳遞「完整使用者資料」物件到 Lua-因此,Lua 本身必須針對特定 BlitzMAX 物件(由指標提供)找出「完整使用者資料」物件。很自然地,解決這兩個問題便會導致如上述的實作。

--AndreasRozek


近期變更 · 喜好設定
編輯 · 歷史
最後編輯於 2007 年 5 月 21 日 上午 8:35 GMT (diff)