Future::getCompletedLocation
(PHP 8.6+, True Async 1.0)
public function getCompletedLocation(): string
Возвращает информацию о месте завершения Future в виде форматированной строки. Удобно для логирования и отладки.
Возвращаемое значение
string — строка формата файл:строка, например /app/worker.php:15. Если Future ещё не завершён, возвращает пустую строку.
Примеры
Пример #1 Получение места завершения как строки
<?php
use Async\Future;
use Async\FutureState;
$state = new FutureState();
$future = new Future($state);
$state->complete("результат");
echo $future->getCompletedLocation(); // /app/script.php:9
Пример #2 Полная трассировка жизненного цикла Future
<?php
use Async\Future;
use Async\FutureState;
$state = new FutureState();
$future = new Future($state);
\Async\async(function() use ($state) {
\Async\delay(50);
$state->complete("done");
});
$result = $future->await();
echo "Future жизненный цикл:\n";
echo " Создан в: " . $future->getCreatedLocation() . "\n";
echo " Завершён в: " . $future->getCompletedLocation() . "\n";
echo " Результат: " . $result . "\n";
См. также
- Future::getCompletedFileAndLine — Место завершения как массив
- Future::getCreatedLocation — Место создания как строка
- Future::getAwaitingInfo — Информация об ожидающих