In reply to rohitk:
The output behavior you’re seeing does not match the LRM. get() has FIFO ordering. If the specified number of keys is not available, the process blocks until the keys become available.
Since LO_PRI_1 is next in order waiting for 2 keys, the simulation gets dead-locked because only one key is available.