【24h】

Implicit Invocation Meets Safe, Implicit Concurrency

机译:隐式调用满足安全隐式并发

获取原文
获取原文并翻译 | 示例

摘要

Writing correct and efficient concurrent programs still remains a challenge. Explicit concurrency is difficult, error prone, and creates code which is hard to maintain and debug. This type of concurrency also treats modular program design and concurrency as separate goals, where modularity often suffers. To solve these problems, we are designing a new language that we call Panini. In this paper, we focus on Panini's asynchronous, typed events which reconcile the modularity goal promoted by the implicit invocation design style with the concurrency goal of exposing potential concurrency between the execution of subjects and observers. Since modularity is improved and concurrency is implicit in Panini, programs are easier to reason about and maintain. The language incorporates a static analysis to determine potential conflicts between handlers and a dynamic analysis which uses the conflict information to determine a safe order for handler invocation. This mechanism avoids races and deadlocks entirely, yielding programs with a guaranteed deterministic semantics. To evaluate our language design and implementation we show several examples of its usage as well as an empirical study of program performance. We found that not only is developing and understanding Panini programs significantly easier compared to standard concurrent object-oriented programs, but also performance of Panini programs is comparable to their equivalent hand-tuned versions written using Java's fork-join framework.
机译:编写正确,高效的并发程序仍然是一个挑战。显式并发是困难的,容易出错,并且会创建难以维护和调试的代码。这种类型的并发还将模块化程序设计和并发视为独立的目标,而模块化通常会受到不利影响。为了解决这些问题,我们正在设计一种称为Panini的新语言。在本文中,我们关注于Panini的异步类型事件,这些事件协调了由隐式调用设计样式促进的模块化目标与公开主题执行者和观察者之间潜在并发性的并发目标。由于改进了模块性,并在Panini中隐含了并发性,因此程序更易于推理和维护。该语言包含静态分析(确定处理程序之间的潜在冲突)和动态分析(使用冲突信息确定处理程序调用的安全顺序)。这种机制完全避免了争执和死锁,从而产生了具有确定性确定性语义的程序。为了评估我们的语言设计和实现,我们展示了几个用法示例以及对程序性能的实证研究。我们发现,与标准并发的面向对象程序相比,开发和理解Panini程序不仅容易得多,而且Panini程序的性能可与使用Java的fork-join框架编写的等效手动调整版本相媲美。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号