首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
门闩专题
muduo_base库学习笔记6——互斥量、条件变量和倒计时门闩类
muduo中对互斥量和条件变量的操作基本上都是调用它们对应的相关函数来实现的,例如MutexLock::lock即调用pthread_mutex_lock(), Condition::wait()即调用pthread_cond_wait等 互斥量 muduo封装了MutexLock和MutexLockGuard MutexLock封装临界区,它是一个简单的资源类,用RAII手法封装互斥量的创建
阅读更多...
(P14)muduo_base库源码分析:互斥锁MutexLock/MutexLockGuard,条件变量Condition,倒计时门闩量CountDownLatch
文章目录 1.互斥锁MutexLock/MutexLockGuard2.条件变量Condition3.倒计时门闩量CountDownLatch 1.互斥锁MutexLock/MutexLockGuard MutexLock类图 MutexLockGuard类图,此类更加常用,使用RAII技法封装 eg:src\14\jmuduo\muduo\base\Mutex.h
阅读更多...
java多线程 门闩_详解Java多线程编程中CountDownLatch阻塞线程的方法
直译过来就是倒计数(CountDown)门闩(Latch)。倒计数不用说,门闩的意思顾名思义就是阻止前进。在这里就是指 CountDownLatch.await() 方法在倒计数为0之前会阻塞当前线程。 CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 CountDownLatch 的作用和 Thread.join() 方法类似
阅读更多...
学习muduo库(4)之门闩类CountDownLatch
UML: 解释: CountDownLatch类是一个通过条件变量类condition,来实现让多个子线程同时起跑的。其实count_是表示需要建立的线程数,当count_大于零时,线程会被条件变量挂起。每建立一个线程count_都会减一,当最后一个线程建立成功后,count_减为零。这个时候就唤起所有被条件变量挂起的线程。这些线程同时起跑。关键的代码如下: void CountDo
阅读更多...