c - 直接函数调用是否比回调函数调用执行得更快?

标签 c function callback

<分区>

我有两个独立的进程:一个使用回调函数调用,另一个使用普通函数调用。哪个进程会执行得更快?

最佳答案

正如 Srinuvenu 所说,调用回调函数就像调用函数指针。 当你调用一个函数指针时,发生的是指针中函数的地址被检索。您有以下场景:

直接函数调用:
在指定地址执行代码。

回调函数调用:
获取函数的地址在指定地址执行代码。

如您所见,调用回调函数会增加一个额外的步骤:检索函数的地址。总之,使用回调比直接调用函数要慢,但是因为地址检索步骤非常快(正如 Mabus 在下面所说的),调用的速度应该非常相似

关于c - 直接函数调用是否比回调函数调用执行得更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25566922/

相关文章:

linux - vim自动选择服务器名

javascript - 如何传递可变数量的参数以及回调函数?

连接多个设备

c++ - 是否存在 difftime 计算闰秒的实际系统?

css - 内部带有for循环的SCSS函数不起作用

python - 在 struct.pack 中使用 *args

c++ - 如何在 C/C++ 程序中创建标签

c - C 中字符比较的段错误

javascript - 有没有一种简单的方法可以让函数获取调用它的标签的 ID?

java - Android NDK 回调到 Java Activity