Re: How to use power of Dual/ Quad core Processors in Applet?
pkriens wrote:
The Java memory model allows the caches of the processors to differ
for variables that are not synchronized or volatile. So on processor A
Not accurate. It also allows them to differ for variables that are volatile
or accessed in a synchronized way, at times. It also requires that
non-volatile variables and those accessed outside synchronized blocks follow
certain visibility rules.
you can read a different value for variable x than on processor B
until they are synchronized. Code that works well on a single
processor because there is only one memory can fail subtly on multiple
processors. Obviously the code is wrong, but I think it makes sense to
schedule Java programs on a single CPU unless specifically allowed.
So you are suggesting that one not fix broken code, instead just try to get
your customers not to run it on multi-processor machines? I cannot imagine
any responsible developer advocating such a practice.
And it isn't "code hat works well o0n a single processor"; it's code that is
equally broken on a single processor. What an irresponsible suggestion.
--
Lew