Perhaps you can just use message queues, depending on how important the queues are.
In the case of posix message queues (see man mq_overview ), you can prioritize messages.
Alternatively, with System V message queues ( msgget() , msgsnd() , msgrcv() ), you can use the message type as a priority and try to get each priority (type) in the sequence from the highest priority to the lowest.
In any case, they are standard IPCs and should be available on any regular Linux distribution.
source share