Skip to content
fesily edited this page Mar 24, 2022 · 4 revisions

luajit调试器性能问题

  • 使用HOOKCOUNT会导致某些情况下jit失效,强制进入解释模式.所以如果要在生产环境使用,请关闭autoupdate,从C或者lua手动调用update;

luajit和lua的不同

  • HOOKCALL会在调用c函数之前进入,但是退出C函数的时候不会触发HOOKRET,而是HOOKLINE事件
  • 函数的尾调用不会触发HOOKRET
  • lua函数中进入尾调用,会被vm直接丢弃当前函数栈信息,因为不会再进来了
  • debug.info在当前函数是lua Main的情况下,luajit提供真实的行号currentline,但是lua是0