Abstract
We present methods for safe and correct programming for concurrent threads in Java. The methods are based on the principles of Concurrent Sequential Processes (CSP). We demonstrate the use of tools which provide the structure of CSP within Java to avoid some of the pitfalls of multithreaded programming using monitors, the primitive synchronization tool in Java. Several examples illustrate the use of these tools.
- 1 Austin, Paul, JCSP web page. Online, intemet. Accessed 19 August, 1998. Available at http://www.cs.ukc.ac.uk/projects/ofa/jcsp/Google Scholar
- 2 Hilderink, Gerald, JavaPP web page at Twente. Online, Intemet. Accessed 26 July, 1998. Available at http ://www.rt.el.utwente.nl/j avapp/Google Scholar
- 3 Hoare, C.A. Communicating Sequential Processes. Commun. ACM 21, 8 (March, 1978), 666-677. Google Scholar
Digital Library
- 4 Lewis, Ted. The Binary Critic. IEEE Computer 17, 3 (March, 1997), 134.Google Scholar
- 5 Roscoe, A.W. The Theory and Practice of Concurrency. London:PrenticeHall, 1998. Google Scholar
Digital Library
- 6 Welch, Peter. Java Threads in the Light of Occam/CSP. In A. Bakkers, editor, Parallel Programming and Java, Proceedings of WoTUG 20, volume 50 of Concurrent Systems Engineering, Amsterdam:IOS Press, 1997Google Scholar
Index Terms
Seminar: safe concurrent programming in Java with CSP
Recommendations
Seminar: safe concurrent programming in Java with CSP
SIGCSE '99: The proceedings of the thirtieth SIGCSE technical symposium on Computer science educationWe present methods for safe and correct programming for concurrent threads in Java. The methods are based on the principles of Concurrent Sequential Processes (CSP). We demonstrate the use of tools which provide the structure of CSP within Java to avoid ...
A CSP Model for Java Multithreading
PDSE '00: Proceedings of the International Symposium on Software Engineering for Parallel and Distributed SystemsJava threads are synchronized through primitives based upon monitor concepts developed in the early 1970s. The semantics of Java's primitives have only been presented in natural language -- this paper remedies this with a simple and formal CSP model. In ...







Comments