System V queue interface optimizations
To avoid un-needed notifications to time-out monitor thread via pipe,
for each queue descriptor we shall keep the hash list of the message submitted in the pipe.
Thus before main thread sends request for timeout, check the hash list, if have entry, then update.
If no entry is found, add one and then add tout request to hash list and send notification via pipe.
The hash list must be synchronized.