Sid Gifari File Manager
🏠 Root
/
home
/
genremedia08
/
musicjukebox.overlookedtracks.com
/
vendor
/
laravel
/
horizon
/
src
/
Console
/
Editing: TerminateCommand.php
<?php namespace Laravel\Horizon\Console; use Illuminate\Console\Command; use Illuminate\Contracts\Cache\Factory as CacheFactory; use Illuminate\Support\Arr; use Illuminate\Support\InteractsWithTime; use Illuminate\Support\Str; use Laravel\Horizon\Contracts\MasterSupervisorRepository; use Laravel\Horizon\MasterSupervisor; class TerminateCommand extends Command { use InteractsWithTime; /** * The name and signature of the console command. * * @var string */ protected $signature = 'horizon:terminate {--wait : Wait for all workers to terminate}'; /** * The console command description. * * @var string */ protected $description = 'Terminate the master supervisor so it can be restarted'; /** * Execute the console command. * * @param \Illuminate\Contracts\Cache\Factory $cache * @param \Laravel\Horizon\Contracts\MasterSupervisorRepository $masters * @return void */ public function handle(CacheFactory $cache, MasterSupervisorRepository $masters) { if (config('horizon.fast_termination')) { $cache->forever( 'horizon:terminate:wait', $this->option('wait') ); } $masters = collect($masters->all())->filter(function ($master) { return Str::startsWith($master->name, MasterSupervisor::basename()); })->all(); foreach (Arr::pluck($masters, 'pid') as $processId) { $this->info("Sending TERM Signal To Process: {$processId}"); if (! posix_kill($processId, SIGTERM)) { $this->error("Failed to kill process: {$processId} (".posix_strerror(posix_get_last_error()).')'); } } $this->laravel['cache']->forever('illuminate:queue:restart', $this->currentTime()); } }
Save
Cancel