Использование библиотеки Promzzle от Guzzle при выходе из PHP

В JS обещания имеют смысл, потому что приложение всегда находится в памяти, и вы хотите, чтобы все происходило без блокировки выполнения (по крайней мере, в случае запуска JS в браузере).

Но в PHP, когда ваш код запускается и завершает выход PHP. Так что в случае, когда вы используете обещания Guzzle, делает:

  1. нерешенный / не отвергнутый) обратный вызов обещания все еще запускается после выхода из PHP (кажется маловероятным)?, или
  2. если поток выполнения достиг конца необещенного кода, ожидает ли он разрешения всех обещаний перед выходом, даже без $fooPromise->wait() вызов?

0

Решение

нерешенный / не отвергнутый) ответный обратный вызов по-прежнему запускается после выхода из PHP (кажется маловероятным)?

Нет, это не так.

если поток выполнения достиг конца необещенного кода, ожидает ли он разрешения всех обещаний перед выходом, даже без вызова $ fooPromise-> wait ()?

Нет, он не ждет обещаний, если только ->wait() явно называется.

Жадные обещания состоят в том, чтобы выполнять множество HTTP-запросов параллельно. Иногда вам нужно сделать это даже внутри одного запроса от пользователя (браузера).

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]