【24h】

Task Types for Pervasive Atomicity

机译:普遍原子性的任务类型

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

摘要

Atomic regions are an important concept in correct concurrent programming: since atomic regions can be viewed as having executed in a single step, atomicity greatly reduces the number of possible interleavings the programmer needs to consider. This paper describes a method for building atomicity into a programming language in an organic fashion. We take the view that atomicity holds for whole threads by default, and a division into smaller atomic regions occurs only at points where an explicit need for sharing is needed and declared. A corollary of this view is every line of code is part of some atomic region. We define a polymorphic type system, Task Types, to enforce most of the desired atomicity properties statically. We show the reasonableness of our type system by proving that type soundness, isolation invariance, and atomicity enforcement properties hold at run time. We also present initial results of a Task Types implementation built on Java.
机译:原子区域是正确的并发编程中的重要概念:由于可以将原子区域视为已在单个步骤中执行,因此原子性极大地减少了程序员需要考虑的可能的交错次数。本文介绍了一种以有机方式将原子性构建到编程语言中的方法。我们认为默认情况下原子性适用于整个线程,并且仅在需要并声明共享的明确点才将原子区域划分为较小的区域。这种观点的必然推论是,每一行代码都是某个原子区域的一部分。我们定义了一个多态类型系统Task Types,以静态方式强制执行大多数所需的原子性属性。通过证明类型健全性,隔离不变性和原子性强制属性在运行时成立,我们证明了类型系统的合理性。我们还将介绍基于Java的任务类型实现的初步结果。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号