首页> 外文会议>European conference on object-oriented programming >Why Do Scala Developers Mix the Actor Model with other Concurrency Models?
【24h】

Why Do Scala Developers Mix the Actor Model with other Concurrency Models?

机译:为什么Scala开发人员会将Actor模型与其他并发模型混合在一起?

获取原文

摘要

Mixing the actor model with other concurrency models in a single program can break the actor abstraction. This increases the chance of creating deadlocks and data races-two mistakes that are hard to make with actors. Furthermore, it prevents the use of many advanced testing, modeling, and verification tools for actors, as these require pure actor programs. This study is the first to point out the phenomenon of mixing concurrency models by Scala developers and to systematically identify the factors leading to it. We studied 15 large, mature, and actively maintained actor programs written in Scala and found that 80% of them mix the actor model with another concurrency model. Consequently, a large part of real-world actor programs does not use actors to their fullest advantage. Inspection of the programs and discussion with the developers reveal two reasons for mixing that can be influenced by researchers and library-builders: weaknesses in the actor library implementations, and shortcomings of the actor model itself.
机译:在单个程序中将参与者模型与其他并发模型混合在一起可能会破坏参与者抽象。这增加了创建死锁和数据争用的机会,这是参与者很难犯的两个错误。此外,它阻止了对演员的许多高级测试,建模和验证工具的使用,因为这些工具需要纯演员程序。这项研究是第一个指出Scala开发人员混合并发模型的现象,并系统地识别导致这种现象的因素。我们研究了用Scala编写的15个大型,成熟且主动维护的actor程序,发现其中80%混合了actor模型和另一个并发模型。因此,现实世界中的演员计划大部分都没有充分利用演员。对程序的检查以及与开发人员的讨论揭示了混合因素可能会受到研究人员和库构建者影响的两个原因:参与者库实现的弱点以及参与者模型本身的缺点。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号