Research

 

CSI ]   [ ETH ]


Lab Manager ]

LST Home ]     [ People ]     [ Research ]     [ Teaching ]
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]

Thread Safety Through Partitions and Effect Agreements

Nicholas Matsakis,  Thomas Gross,  Thread Safety Through Partitions and Effect Agreements, International Workshop on Aliasing, Confinement and Ownership in object-oriented programming, April 2008. [IWACO_2008.pdf]
This paper describes a type and effect system for object-oriented programs which allows programmers to divide their heap into disjoint partitions at a field-level granularity, analyze the effects of common statements upon these partitions, and then use this information to enforce safety properties in their programs. Our flow-sensitive effect system requires methods to disclose which partitions of the heap they will read or write, and also allows them to specify an effect agreement which can be used to limit the conditions in which a method can be called. To show the flexibility of such a system for enforcing semantic constraints, we describe a safe multi-threading system with support for many common threading patterns, including unsynchronized access to thread-local and shared read-only data, as well as limited migration of data between threads.
[ Publications ]     [ Research Opportunities ]     [ Partners & Supporters ]     [ Earlier Work ]