从Lua调用C函数比从C语言调用更快吗?

我对 Lua 有些陌生(其实我学会了基本的 Lua 和如何在 C 中使用 Lua),我正在使用 Lua 在 C 中开发一个简单的俄罗斯方块游戏(听起来很奇怪,但只是为了练习:D)。

我有一些问题:

  1. 我想知道从 Lua 调用 C 函数是否更快。
  2. 如果问题 1 的答案是肯定的,那么从 Lua 调用 C 中的绘图函数是否可行?这会导致程序变慢吗?
  3. 什么是推荐的 Lua_C 编程结构?是应该在 Lua 中编写什么样的代码?C 中应该编写什么样的代码?(绘图代码、逻辑代码等)
点赞
用户688327
用户688327
  1. 简单回答:不会更快。从Lua到C的函数调用会带来一些开销。

  2. 调用绘图函数是可以的,因为实际的绘图所需的时间要比函数调用多得多。

  3. 经验法则通常是使用脚本语言(在本例中为Lua)编写逻辑,并让C处理任何性能密集型部分,如渲染和重计算。例如,您可能无法通过让C处理字符移动等内容来获得任何性能提升。您可以使用分析器来确定哪些部分可能从C实现中获得性能提升。

2015-04-08 02:54:35