补全:翻成 C++ 的守卫
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
补全:lock_guard 活到哪一行
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
补全:修 C 的漏放
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
补全:数每个函数的配对
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
找 C 片段里的漏放
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
三语言对照表
本节的东西: TABLE 三语言对照:(声明, 拿, 放, 自动放) count_pairs(src) C 源码里 pthread_mutex_lock / unlock 各几次 find_l
C++ 的 lock_guard
C++ 的 std::lock_guard 相当于 Python 的【0】。
C 里的锁
C(pthread)里的互斥锁和 Python 的 Lock 相比,最大的不同是【0】。
补全:给临界区计时
本节的东西: model(tasks) 时间模型:每条线程 (算, 改) 两段耗时;粗锁全串行 = Σ(算+改),细锁算并行改串行 = max(算) + Σ改;交回 (粗, 细) timed(fn
补全:一把大锁拆成每键一把
本节的东西: model(tasks) 时间模型:每条线程 (算, 改) 两段耗时;粗锁全串行 = Σ(算+改),细锁算并行改串行 = max(算) + Σ改;交回 (粗, 细) timed(fn