Fair Multi-Branch Locking of Several Locks

Claudio Fleiner
IBM Research Division
Zurich Research Laboratory
click for textversion of email address
Michael Philippsen
Computer Science Department
University of Karlsruhe, Germany
phlipp@ira.uka.de

Much of this work has been done during the authors' stay at ICSI, International Computer Science Institute, Berkeley.

This paper appeared in IASTED International Conference on Parallel and Distributed Computing and Systems, pages ?, Washington D.C., October 13-16, 1997.

Abstract

Thread-based concurrent languages currently do not provide much support to (a) avoid deadlocks, (b) treat competing threads in a fair way, and (c) allow branching depending on lock availability. This makes parallel programming difficult and error prone and thus reduces the programmer's productivity. In this paper we present a lock statement for fair atomic locking of several locks that supports (a), (b), and (c). We discuss the expressive power of the new lock statement and show the basic principles of an efficient implementation.

Postscript version of the paper