DeepSeek-Ai3FS对象池如何巧妙减少80%锁竞争?!
- 内容介绍
- 文章标签
- 相关推荐
当智能指针释放时调用:
┌─────────────────┐ │ 调用 ObjectPool::get │ └──────────┬──────┘ ↓ ┌─────────────────┐ │ 获取线程本地存储 TLS │ └──────────┬──────┘ ↓ ┌─────────────────┐ │检查 second_ 批次 │ └──────────┬──────┘ ↓ ┌───────────────────────┐ │ second_ 有对象? │ └───────────┬───────────┘ Yes │ No ┌─────┘ └────┐ ↓ ↓ ┌──────────────┐ ┌──────────────┐ │从second_取对象│ │检查first_批次│ └───────┬──────┘ └───────┬──────┘ │ │ ↓ ↓ ┌───────────────┐ ┌───────────────────┐ │ 返回构造

当智能指针释放时调用:
┌─────────────────┐ │ 调用 ObjectPool::get │ └──────────┬──────┘ ↓ ┌─────────────────┐ │ 获取线程本地存储 TLS │ └──────────┬──────┘ ↓ ┌─────────────────┐ │检查 second_ 批次 │ └──────────┬──────┘ ↓ ┌───────────────────────┐ │ second_ 有对象? │ └───────────┬───────────┘ Yes │ No ┌─────┘ └────┐ ↓ ↓ ┌──────────────┐ ┌──────────────┐ │从second_取对象│ │检查first_批次│ └───────┬──────┘ └───────┬──────┘ │ │ ↓ ↓ ┌───────────────┐ ┌───────────────────┐ │ 返回构造


