%T Java Threads in Light of occam/CSP (Tutorial)
%A Peter H. Welch
%E André W. P. Bakkers
%B Proceedings of WoTUG\-20: Parallel Programming and Java
%X Java provides support for parallel computing through a model
that is built into the language itself. However, the
designers of Java chose to be fairly conservative and
settled for the contepts of threads and monitors. Monitors
were developed by Tony Hoare in the early 1970s as a
structued way of using semaphores to control access to
shared resources. Hoare moved away from this, in the late
1970s, to develop the theory of Communicating Processes
(CSP). One reason for this was that the semantics of
monitors and threads are not WYSIWIG, so that designing
robust parallel algorithms at this level is seriously hard.
Fortunately, it is possible to introduce the CSP model into
Java through sets of classes implemented on top of its
monitor support. By restricting interaction between active
Java objects to CSP synchronisation primitives, Jav thread
semantics become compositional and systems with arbitrary
levels of complexity become possible. Multi\-threaded Web
applets and distributed applications become simpler to
design and implement, race hazards never occured,
difficulties such as starvation, deadlock and livelock are
easier to confront and overcome, and performance is no worse
than that obtained from directly using the raw monitor
primitives. The advantages of teaching parallelism in Java
purely through the CSP class libraries will be discussed.
(These libraries were developed jointly at Kent and Oxford
Universities in the UK and the University of Twente in the
If you have any comments on this database, including inaccuracies, requests to remove or add information, or suggestions for improvement, the WoTUG web team are happy to hear of them. We will do our best to resolve problems to everyone's satisfaction.
Copyright for the papers presented in this database normally resides with the authors; please contact them directly for more information. Addresses are normally presented in the full paper.
Pages © WoTUG, or the indicated author. All Rights Reserved.
Comments on these web pages should be addressed to: www at wotug.org