代码改变世界

随笔档案-2011年10月

linux分支优化likely,unlikely

2011-10-22 18:17 by 后端技术, 1363 阅读, 收藏,
摘要: 最近在公司的代码中看到不少likely/unlikely的调用,起初不太明白,上网一查才明白这东西是干吗用的。首先要明确以下代码的含义:if (likely(value))等价于if (value)if (unlikely(value))等价于if (value)也就是说likely()和unlikely()从阅读和理解的角度是一样的。这两个宏在内核中定义如下:1 <linux/compiler>2 3 #define likely(x) __builtin_expect(!!(x), 1)4 #define unlikely(x) __builtin_expect(!!(x), 阅读全文

使用安全的c++ new操作符

2011-10-22 02:11 by 后端技术, 671 阅读, 收藏,
摘要: C++ nothrow new 阅读全文