gpt4 book ai didi

scala - 有使用软件事务内存的实际经验吗?

转载 作者:行者123 更新时间:2023-12-03 05:42:24 24 4
gpt4 key购买 nike

最近人们对 STM(软件事务内存)框架和语言扩展的兴趣似乎越来越浓厚。 Clojure特别是有一个出色的实现,它使用 MVCC (multi-version concurrency control)而不是滚动提交日志。 GHC Haskell 还有 an extremely elegant STM monad这也允许交易组合。最后,为了自吹自擂,我最近实现了一个 STM framework for Scala它静态地强制执行引用限制。

所有这些都是有趣的实验,但它们似乎仅限于那个领域(实验)。所以我的问题是:你们中有人在现实世界中见过或使用过 STM 吗?如果是这样,为什么?它带来了什么样的好处?性能怎么样? (在这一点上似乎有很多相互矛盾的信息)您会再次使用 STM 还是更喜欢使用其他并发抽象,例如 actor?

最佳答案

我参与了 Haskell 中 BitTorrent 客户端的爱好者开发(名为 conjure)。它大量使用 STM 来协调不同的线程(每个对等 1 个线程 + 1 个用于存储管理 + 1 个用于整体管理)。

好处:锁更少,代码可读。

速度不是问题,至少不是因为 STM 的使用。

希望这有帮助

关于scala - 有使用软件事务内存的实际经验吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/209751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com