Здравствуйте, remark, Вы писали:
R>Как там это сделать по-правильному не скажу. Возможно самое простое решение — завести 2 порта (очереди), каждая очередь под сообщения своего приоритета.
да нет, надо чтоб если есть в очереди сообщения с определенном признаком, то их обработать в первую очередь, причем клиенты (те кто посылают сообщения о приоритетах мало что знают).
Т.е. прогнать текущую очередь, выбрать нужные, обработать, потом обрабатывать остальные в порядке получения, в ерланге это выглядит так:
priority_receive() ->
receive
{alarm, X} ->
{alarm, X}
after 0 ->
receive
Any ->
Any
end
end.
копирайты Армстронга.
R> 
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>