river-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Patricia Shanahan <p...@acm.org>
Subject Re: Space/outrigger suggestions (remote iterator vs. collection)
Date Wed, 19 Jan 2011 13:46:56 GMT
Peter Firmstone wrote:
...
> Yes I bumped into this recently when creating a concurrent policy 
> implementation, although it was with Enumeration, the backing set cannot 
> be modified while the Enumeration is being read from a loop, the same 
> with the iterator.
...

That depends on the implementation of the Iterator, and the Iterable's 
related contract. There is nothing prohibiting concurrency-supporting 
contracts. See, for example, 
http://download.oracle.com/javase/6/docs/api/java/util/concurrent/ConcurrentLinkedQueue.html#iterator%28%29

I'm planning to make the FastList in outrigger Iterable, and follow the 
ConcurrentLinkedQueue model. As the results looked in preliminary 
benchmarking before I went on vacation, the best implementation is based 
on ConcurrentLinkedQueue.

The issue of remoteness, and allowing remote-related exceptions, is 
another issue. However, rather than giving up the nice loop syntax we 
get with Iterable, we could consider wrapping in an unchecked exception.

Patricia

Mime
View raw message