SynchronizedQueue is an implementation of a data structure that fulfills the following requirements:
- has to be thread-safe for access from multiple threads
- should be non-blocking for performance reasons
- random-delete has to be possible
- first-in, first-out
- shallow copies should be possible
- should be easy to clear
As there was no real fit in the Java 6 JDK data structures, this is a simple self-made implementation.
It's for sure not the best-performing implementation and it could make sense to introduce upper bounds, but it works well enough.