sort of like a \"blocking set\". How can I implement a blocking queue where adding a member that is already in the set is ignored?
A blocking queue implementation backed by a linked hash set for predictable iteration order and constant time addition, removal and contains operations:
There you go.