Я проверяю MSG очередь в PHP с помощью следующего кода.
<?php
$mq = msg_get_queue(3141592653589793238);
while (true)
{
$msg_type = null;
$msg = null;
$max_msg_size = 32;
msg_receive($mq, 1, $msg_type, $max_msg_size, $msg);
print "receive: $msg ($msg_type)\n";
}
?>
Согласно руководству, если желаемый тип (здесь = 1) является положительным, то полученный тип должен быть таким же, как желаемый тип. Но когда я запускаю код, вывод такой, как показано ниже. Кроме того, он не блокирует и продолжает получать пустое сообщение, когда ничего не отправлено раньше.
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
receive: (0)
Так что здесь не так?
Задача ещё не решена.
Других решений пока нет …