LIKELY和UNLIKELY的一般定义如下:
#define LIKELY(x) (__builtin_expect(!!(x),1))
#define UNLIKELY(x) (__builtin_expect(!!(x),0))
为什么要使用两个叹号呢?
取两次非主要是为了顺利的和0或1进行比较。
LIKELY和UNLIKELY的一般定义如下:
#define LIKELY(x) (__builtin_expect(!!(x),1))
#define UNLIKELY(x) (__builtin_expect(!!(x),0))
为什么要使用两个叹号呢?
取两次非主要是为了顺利的和0或1进行比较。
转载于:https://www.cnblogs.com/FrankTan/archive/2010/12/11/1902746.html