1. 线程池
- 生产者消费者
 - 任务队列
 - 互斥访问临界资源
 - 互斥锁
 - 条件变量
 
2. 死锁
* 死锁的排查
- 查看进程CPU利用率,内存利用率(先使用命令ps aux | grep 获取进程的进程号, 然后查看cpu,内存使用率top -Hp [进程号])
 - 若发现进程所占用的CPU和内存资源都很低,则是有可能发生的死锁,进而导致阻塞
 - 此时若是在生产环境下,则可尝试查看日志,使用gdb attach “进程号”(要切换到root用户下执行)
 - thread apply all bt
 - info threads
 - thread 线程号
 - bt
 
3. 迭代器失效
- 对容器进行插入(扩容),删除操作时可能会导致迭代器的失效