【c++】c++的一些技术操作

  1. pthread_create 的第三个参数,为函数指针,指向处理线程函数的地址。该函数,要求为静态函数。如果处理线程函数为类成员函数时,需要将其设置为静态成员函数。
  2. C++静态成员函数访问非静态成员
    https://blog.csdn.net/yueguangmuyu/article/details/118390764
  3. C++静态成员函数访问非静态函数
    函数定义
private:
    /*工作线程运行的函数,它不断从工作队列中取出任务并执行之*/
    static void *worker(void *arg);
    void run();

调用

pthread_create(m_threads + i, NULL, worker, this)

通过void *arg指针接受任何类型的指针,再使用强制类型转换运算符创建一个新的实例

void *threadpool<T>::worker(void *arg)
{
    threadpool *pool = (threadpool *)arg;
    pool->run();
    return pool;
}

https://github1s.com/qinguoyi/TinyWebServer/blob/HEAD/threadpool/threadpool.h#L93

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值