回调函数的常见实现方式及速度比较

回调函数的常见实现方式及速度比较

 

 

回调函数实在是用得太广泛,回调函数又有多种实现方式,如:

1、  静态函数

2、  虚函数

3、  函数对象

4、  传统c函数,通过一个void *传递对象地址,内部强制转换

5、  fastdelegate

6、  Tr1::function + bind

7、  Boost::Function + bind

基本上速度是按照由快到慢的顺序排列的,就是

1 > 2 > 3 > 4 > 5 > 6 > 7

其实234速度很接近,有的时候函数对象效率更高一点,基本上越是高级的方法使用起来越方便,但速度越慢,越是传统的方法速度越快,呵呵,看来做server端程序要综合考虑效率太新的东西还是要少用啊,还是用传统的方法比较靠谱一点,当然如果调用次数不多的地方,使用更方便的方法还是好一些,毕竟我们要综合权衡,而不能死板恪守教条。

 

 

你可能感兴趣的:(c++/c++11)