Doug Lea writes:
But it strikes me that given how people are learning to use AQS for
cool things, we probably ought to add the "Long" version of AQS
(AbstractQueuedLongSynchronizer would sadly have to be its ugly name)
for Mustang, since the next chance won't be for several years. As I
wrote about this before, the down side is that people on pre-Q5 macs
will get crummy performance from anything built from it. But that's
not a very compelling reason if we don't in turn use it to support
other j.u.c stuff (like for CyclicBarrier, as I had previously
planned.) Implementation is trivial: Copy from AQS, replace some ints
with longs, and make a few other tiny adjustments.
3. Is now the time to add AbstractQueuedLongSynchronizer? We didn't
include this in Tiger because anything using it would not be any
faster/better than using locks on chips without 64bit atomics (the
only still-common one is pre-G5 powerpc). But it should eventually
go in. Why not now? It could be used to speed up CyclicBarrier.
(Well, it would actually slow it down on most macs. But by the
time Apple ports Mustang, there probably won't be many pre-G5s
around
###@###.### 2005-03-09 03:23:30 GMT