gcc
__builtin_expect — 分支预测优化
https://www.cnblogs.com/LubinLew/p/GCC-__builtin_expect.html
#define likely(x) __builtin_expect(!!(x), 1) 预测if (likely(x))成立可能性很大
#define unlikely(x) __builtin_expect(!!(x), 0) 预测if (unlikely(x))成立可能性很小
https://www.cnblogs.com/LubinLew/p/GCC-__builtin_expect.html
#define likely(x) __builtin_expect(!!(x), 1) 预测if (likely(x))成立可能性很大
#define unlikely(x) __builtin_expect(!!(x), 0) 预测if (unlikely(x))成立可能性很小