Я использовал laravel 5.1 Очередь для моей функции фона с асинхронным режимом. Но я хочу запустить эту функцию только один раз. Если эта функция не работает, я хочу сделать другой процесс. Как я могу обнаружить, что моя работа потерпела неудачу или нет? Я делаю правильно или неправильно? Что я должен изменить? ps: Я новичок. Я использовал это в своем контроллере.Как я могу запустить Laravel Queue только один раз?
$job = new myjob($var1, $var2);
$this->dispatch($job);
$job->release();
if ($job->attempts() >= 1)
{
$job->delete();
//will do other process
}
Если вы хотите, чтобы ждать работы и только ** тогда ** делать другое - почему бы запустить его асинхронной в первую очередь? – Timofey
Я буду делать другой процесс только тогда, когда моя работа не удастся. И я использую работу в качестве фоновой функции. Потому что эта функция имеет множество процессов завивки и базы данных. Мне нужно подождать не менее 7 секунд, чтобы закончить это. Вот почему я использую работу. –