HY!
你能在Laravel 5.2中默认进行多线程吗?我目前正在使用Jobs
和Queues
,但queue:listen
或queue:work
一次只能运行一份作业。我需要一个用代码制作的方法,而不是Supervisor
。所以运行cron,如果等待4个作业,则运行它们异步。
正如我在标题中提到的,我也同意多个过程,但我不知道它是如何工作的。我试图将这些命令放在循环中,但仍然只需要一份工作。
public function handle()
{
$jobsWaiting = Job::where('jobstatus', 'w')->where('jobtype', 'send')->where('approved', 1)->get();
foreach ($jobsWaiting as $job) {
$this->dispatch(new SendEmail($job->id));
}
$x = 1;
while ($x <= count($jobsWaiting)) {
exec("php artisan queue:work --daemon");
$x++;
}
}
这是在cron上运行的方法,但不起作用:(