muduo
文章平均质量分 83
xiuxiu__deng
这个作者很懒,什么都没留下…
展开
-
muduo/base库学习笔记(2)-----Exception类
Exception类Exception::Exception(string msg)构造函数的实现Exception::Exception(string msg) : message_(std::move(msg)), stack_(CurrentThread::stackTrace(/*demangle=*/false)){}其中CurrentThread::stack...原创 2019-04-05 19:26:07 · 186 阅读 · 0 评论 -
muduo/base库学习笔记(12)-----ThreadPool类
ThreadPool1 构造函数和析构函数的实现ThreadPool::ThreadPool(const string& nameArg)函数的实现ThreadPool::ThreadPool(const string& nameArg) : mutex_(), notEmpty_(mutex_), notFull_(mutex_), name_...原创 2019-04-07 19:33:17 · 209 阅读 · 0 评论 -
muduo/base库学习笔记(11)-----BoundedBlockingQueue类
BoundedBlockingQueue该类和上一个相比区别在于,这是有上边界的,当队列为满的时候,不能进行添加操作,当队列为空的时候,不能进行删除操作。并且该队列是一个循环队列1 构造函数的实现//这是一个有参数的构造函数,里面的参数是队列的最大容量explicit BoundedBlockingQueue(int maxSize) : mutex_(), not...原创 2019-04-07 14:56:26 · 231 阅读 · 0 评论 -
muduo/base库学习笔记(10)-----BlockingQueue类
BlockingQueue该类是没有上边界的,即在这个队列中,如果为空,是不能进行取走的操作,但是可以一直的往队列中进行添加1 构造函数的实现BlockingQueue() : mutex_(), notEmpty_(mutex_), queue_() { }2 成员函数的实现void put(const T& x)void put...原创 2019-04-07 14:37:12 · 213 阅读 · 0 评论 -
muduo/base库学习笔记(9)-----ThreadLocalSingleton类
ThreadLocalSingleton1 内部类的实现内部类的和ThreadLocal类似class Deleter { public: Deleter() { pthread_key_create(&pkey_, &ThreadLocalSingleton::destructor); } ~Deleter() ...原创 2019-04-07 14:17:49 · 119 阅读 · 0 评论 -
muduo/base库学习笔记(8)-----ThreadLocal类
ThreadLocal1 构造函数和析构函数的实现ThreadLocal()函数的实现 ThreadLocal() { //第二个参数是pkey销毁的时候,调用的清理函数 MCHECK(pthread_key_create(&pkey_, &ThreadLocal::destructor)); }** ~ThreadLocal()函数的实现**...原创 2019-04-07 11:12:49 · 132 阅读 · 0 评论 -
muduo/base库学习笔记(7)-----Singleton类
Singleton成员函数的实现static T& instance()的实现 static T& instance() { //表明init函数只能调用一次 pthread_once(&ponce_, &Singleton::init); assert(value_ != NULL); return *value_; }...原创 2019-04-07 10:52:53 · 177 阅读 · 0 评论 -
muduo/base库学习笔记(6)-----CountDownLatch类
CountDownLatch1 构造函数的实现CountDownLatch::CountDownLatch(int count) : mutex_(), condition_(mutex_), count_(count){}2 普通成员函数的实现void wait()函数的实现这个函数主要是当条件不满足的时候,就阻塞等待条件满足void CountDown...原创 2019-04-07 09:40:10 · 228 阅读 · 0 评论 -
muduo/base库学习笔记(5)-----Condition类
Condition1 构造函数和析构函数的实现** Condition(MutexLock& mutex)函数的实现**explicit Condition(MutexLock& mutex) : mutex_(mutex) { MCHECK(pthread_cond_init(&pcond_, NULL)); }~Condition(...原创 2019-04-05 21:21:50 · 184 阅读 · 0 评论 -
muduo/base库学习笔记(4)-----MutexLock类
MutexLock类1 构造函数和析构函数的实现构造函数的实现 MutexLock() : holder_(0) { //进行加锁 MCHECK(pthread_mutex_init(&mutex_, NULL)); }析构函数的实现 ~MutexLock() { assert(holder_ == 0); //解锁 ...原创 2019-04-05 21:06:25 · 178 阅读 · 0 评论 -
muduo/base库学习笔记(3)-----Thread类
Thread类1 构造函数和析构函数Thread(ThreadFunc, const string& name = string())构造函数的实现,其中name有默认值为空Thread::Thread(ThreadFunc func, const string& n) : started_(false), joined_(false), pthread...原创 2019-04-05 20:40:25 · 505 阅读 · 0 评论 -
muduo/base库学习笔记(1)-----Timestamp类
Timestamp类1 变量static const int kMicroSecondsPerSecond = 1000 * 1000; private: int64_t microSecondsSinceEpoch_;2 构造函数无参构造函数Timestamp() : microSecondsSinceEpoch_(0) { }有参数构造函数exp...原创 2019-04-05 17:08:50 · 267 阅读 · 4 评论 -
muduo/net库(1)
如果说你不用muduo的net库,让你用epoll监听,你会怎样写服务器?下面是我写的,为了让代码的逻辑更加清晰,我这里没有进行出错判断。这只是一个简单的回射服务器#include <iostream>#include <signal.h>#include <sys/types.h>#include <sys/socket.h>#inc...原创 2019-04-16 16:43:43 · 166 阅读 · 0 评论