15.muduo学习笔记之base_ThreadLocalSingleton.{h&cc}

1. 类说明

1. 功能

  • muduo的单实例TLS类

2. 继承

  1. noncopyable

2. 成员变量说明

  1. t_value_
    • 静态,__thread,T*类型的值
  2. deleter_
    • 静态,Deleter类型,Deleter是内部类

3. 成员函数说明

1. 普通

  1. 构造和析构删除了

2. 静态私有函数

  1. destructor(void*)
    • 和上一篇的destructor功能一样

3. 静态公有函数

  1. instance()
    • 给t_value_设置值,但感觉这个貌似不是线程安全的,也没有加锁啥的,这个为啥不用那个pthread_once呢
    • 上面疑惑解决了,为什么不按照线程安全实现?因为不需要,没个线程都有一个t_value_指针,没有线程安全这种说法了
  2. pointer()
    • 返回value的指针t_value_

4. 内部类

1. Deleter

  • 感觉这个类就是为了实现RAII,自动销毁线程局部变量
1. 成员变量
  1. pkey_
    • pthread_key_t,作用上一篇讲过
2. 成员函数
  1. 构造
    • 调用pthread_key_create
  2. 析构
    • 调用pthread_key_delete
  3. set(T*)
    • 断言pkey_对应的值为空,并设置值,也就是只能调用一次…
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值