首页
文章列表
标签墙
返回找工具啦
死锁
共 4 篇文章
Go语言sync.WaitGroup的Add和Done不匹配导致死锁
2026-05-06 00:19:44
Go语言sync.WaitGroup的Add和Done不匹配导致死锁 Go 语言中的 sync.WaitGroup 是用于等待一组 Goroutine 完成执行的同步原语。死锁通常发生在 Add 增加的计数器与 Done 减少的计数器数量不一致,或者 Wait 被调用时计数器非零的情况下。解决此问题
Go语言
死锁
并发编程
41
0
C++ std::scoped_lock同时锁定多个互斥量避免死锁
2026-05-04 14:29:00
C++ std::scopedlock同时锁定多个互斥量避免死锁 在多线程编程中,当需要同时操作多个共享资源时,如果锁的顺序不一致,极易发生死锁。死锁会导致程序挂起,无法继续执行。C++17 引入了 std::scopedlock,这是一个专门为了解决多锁死锁问题而设计的工具。它不仅能一次性锁定多个
C++编程
多线程
死锁
50
0
MySQL死锁的排查与解决:show engine innodb status分析
2026-05-04 07:18:14
MySQL死锁的排查与解决:show engine innodb status分析 数据库出现死锁会导致业务报错,响应超时。快速定位并解决死锁是保障系统稳定性的关键能力。本文将演示如何使用 show engine innodb status 命令快速分析死锁根源并修复。 获取死锁日志 执行 命令查看
MySQL
死锁
排查
78
0
Go语言sync.RWMutex的读锁升级与写锁降级限制
2026-04-29 06:18:00
Go语言sync.RWMutex的读锁升级与写锁降级限制 sync.RWMutex 是 Go 语言中用于读写分离的锁机制,允许多个读操作同时进行,但写操作互斥。在使用过程中,关于“读锁升级”和“写锁降级”的限制是导致死锁的常见原因。 1. 理解读锁升级的死锁陷阱 在 Go 语言的标准库中,sync.
Go语言
读写锁
RWMutex
48
0