title: Laravel: Run cron job tasks simultaneously
body: <p>I have several tasks that I've scheduled to run at various times. Here are those tasks:</p>
  
  <pre><code>namespace App\Console;
  
  use Illuminate\Console\Scheduling\Schedule;
  use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
  
  class Kernel extends ConsoleKernel
  {
      /**
       * The Artisan commands provided by your application.
       *
       * @var array
       */
      protected $commands = [
          Commands\PostGetter::class
      ];
  
      /**
       * Define the application's command schedule.
       *
       * @param  \Illuminate\Console\Scheduling\Schedule  $schedule
       * @return void
       */
      protected function schedule(Schedule $schedule)
      {
          $schedule-&gt;command('post_getter 0 5')
              -&gt;cron('*/15 * * * *');
  
          $schedule-&gt;command('post_getter 5 10')
              -&gt;cron('*/15 * * * *');
  
          $schedule-&gt;command('post_getter 10 20')
              -&gt;everyThirtyMinutes();
  
          $schedule-&gt;command('post_getter 20 30')
              -&gt;hourly();
      }
  }
  </code></pre>
  
  <p>In order to log when each of these tasks is run, I've added the following piece of code in the <code>PostGetter</code> class to log when the task has begun running:</p>
  
  <pre><code>Log::info('Post getter for {arg1} and {arg2} has started.');
  </code></pre>
  
  <p>Where <code>arg1</code> and <code>arg2</code> are the two arguments in the scheduler (e.g. <code>0 5</code> or <code>5 10</code>).</p>
  
  <p>I've noticed in my log file that these scripts don't seem to run at the same time. For example, when the first task is run (<code>post_getter 0 5</code>), the second task (<code>post_getter 5 10</code>) only seems to run after the first task is done, and so on.</p>
  
  <p>How can I make it so that all of the tasks listed in the <code>Kernel</code> class are run at the same time and don't have to wait for the previous task to finish?</p>