Concurrency classes...

Göran Krampe goran at
Fri Jan 26 08:42:31 UTC 2007

Hi folks!

I was googling for good concurrency classes for Java (cough) yesterday and
discovered Doug Lea's util.concurrent
( and the new
java.util.concurrent in Java 1.5 resulting from Doug's work

Now, this leads me to the question - how do we stack up in Squeak land?

AFAIK we have this:

1. Semaphore - the basic building block.
2. Monitor - the new "better Semaphore", but on a higher level.
3. SharedQueue - a simple queue, has been improved relatively lately.
4. SharedBufferStream - a different implementation of SharedQueue that is
more efficient and... well, a bit different. :) (my memory fails)
5. SharedBidirectionalStream - a combo of two SharedBufferStreams thus
mimicking a SocketStream "in image" since it has two independent channels
in both directions (like a SocketStream has). Quite fun to play with and
useful for multiplexing (multiple Processes sharing a SocketStream) etc.

(The two last classes are available in SharedStreams available on SM

Surely we have lots more spread out in various places?

I know that most of the time we get by fine with Monitor and SharedQueue,
but some things that I feel are missing *and* would be useful is:

- something for executing "tasks"
- more concurrent Collections

regards, Göran

More information about the Squeak-dev mailing list