Safe concurrency for aggregate objects with invariants

B. Jacobs, K.R.M. Leino, F. Piessens, W. Schulte
2005 Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05)  
Developing safe multithreaded software systems is difficult due to the potential unwanted interference among concurrent threads. This paper presents a flexible methodology for object-oriented programs that protects object structures against inconsistency due to race conditions. It is based on a recent methodology for single-threaded programs where developers define aggregate object structures using an ownership system and declare invariants over them. The methodology is supported by a set of
more » ... guage elements and by both a sound modular static verification method and run-time checking support. The paper reports on preliminary experience with a prototype implementation.
doi:10.1109/sefm.2005.39 dblp:conf/sefm/JacobsPLS05 fatcat:vnq6tfbewjelrbhknq57r62nua