To extend Java's concurrent behavior in a more natural way, in a more
object-oriented point of view, we propose an extension to Java's concurrency
model that will emulate Eiffel's separate statement. (Eiffel is an
object-oriented language with a comprehensive approach to software
construction.) The extension permits the attachment of nonphysical processors
or threads to objects, thus allowing them to behave in an asynchronous and
completely independent manner. This article briefly shows the concurrency
tools of the Java programming language, points out their shortcomings,
proposes solutions, and ends with the implementation of a solution.
It's useful to evaluate Java's concurrent programming model by reviewing how
this language implements the concepts explained by Bertrand Meyer and
referred to as "The three forces of computation," which represent the
statement: "T... (more)