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.
![]() ![]() |
Last change: 10/21/97 The Sather Team (sather@icsi.berkeley.edu) |