Ich habe gerade begonnen, mit Pheanstalk und habe ein Problem mit der Reserve-Funktion. Ich habe den folgenden Code für einen Arbeiter Skript:Pheanstalk Reservefunktion
<?php
//... code that requires the autoload.php page among and other
$queue = new Pheanstalk_Pheanstalk("127.0.0.1:11300");
$queue->watch("action_tube");
$job = $queue->reserve();
//... code that would then output the information obtained from the job
?>
Das Problem, das ich habe, ist, dass der Code immer stecken bleibt, wenn die Reservefunktion Vorformen. Ich weiß für eine Tatsache, dass es dort hängen bleibt, weil ich den Aufwand durchführte, diesen Code in einem Browser auszuführen und echo
zu verwenden, während Code ausnotiert wurde, um genau zu sehen, wo der Code stecken bleibt. Es ist, als würde innerhalb der Reservefunktion eine unendliche While-Schleife passieren. Wenn ich zum Beispiel $job = $queue->reserve()
auskommentieren würde, würde der Code frei und die Seite würde sofort geladen werden, aber wenn ich es nicht auskommentiere, bleibt die Kreisladung im Browser für immer in Bewegung.
FRAGE: Warum könnte ich dieses Problem haben? Ist das normal für die Reservefunktion? Steht es nur darauf, dass etwas in der Warteschlange erscheint? Ich habe tatsächlich die "action_tube"
Warteschlange erstellt von einem früheren Skript, so würde ich denken, dass die reserve
Funktion würde einige davon herausnehmen. Könnte der Zustand der Warteschlange eine Reservefunktion zum Stillstand bringen? Jede Rückmeldung wird sehr geschätzt!
Oh, so wird angenommen, eine Endlosschleife sein, bis er etwas in der Warteschlange findet? – Webeng