I agree that threads are generelly a difficult issue to cope.  What is
worse, there are a lot of Java-developers who tell us, that it is not
difficult for them,
but in the end the software fails on the productive system, for example
because the load is different then on the test system, causing different
threads
to be slowed down to a different extent etc.  So people who are having
difficulties with multithreading still use them a lot and don't admit
the difficulties
and they might not even appear during testing...

Even though I did see software that heavily uses multithreading and
works well.

On the other hand I think that there are certain tasks that need to use
some kind of parallelism, either for making use of parallel CPU
infrastructure or
for implementing patterns that can more easily be expressed using
something like multithreading.

I think that the approach of running several processes instead of
several threads is something that can be considered in some cases, but I
think it does
come with a performance price tag that might not be justified in all
situations.

Maybe the actor model from Scala is worth looking at, at least the
Scala-guys claim that that solves the issue, but I don't know if that
concept can easily
be adapted for Perl 6.

Best regards,

Karl

Reply via email to