6.1.1 软件事务内存 (STM)


文档摘要

6.1.1 软件事务内存 (STM) 在并发编程的漫长征途上,我们曾一次次向硬件低头:用锁保护临界区,用信号量协调资源,用原子指令拼凑无锁结构——这些方案像精密却笨重的齿轮组,每增加一个线程,就多一分死锁风险、多一分缓存行伪共享的隐痛、多一分调试时“它在我机器上是好的”式的无力感。直到某天,有人问:如果内存访问也能像数据库事务一样被“原子化”、“隔离化”、“一致性地提交或回滚”,会怎样? 这不是幻想,而是软件事务内存(Software Transactional Memory, STM)给出的郑重回答。它不依赖CPU的TSX指令集,不强求缓存一致性协议配合,而是在语言运行时层,以纯软件方式构建出一套可组合、可嵌套、可推理的并发原语体系。


发布者: 作者: 转发
评论区 (0)
U