Added an option: when this option is active and the message queue is empty "get" function waits for a message to be pushed into the queue