BoundedQueue: Monitor concept applied by Hoare.

http://www.mathematik.uni-marburg.de/~loogen/Lehre/ss05/ParProg/java.pdf