<?php
							 | 
						|
								declare(ticks=1);
							 | 
						|
								
							 | 
						|
								chdir(__DIR__.'/..');
							 | 
						|
								
							 | 
						|
								$mode = 'run';
							 | 
						|
								if(array_key_exists(1, $argv) && $argv[1] == 'once')
							 | 
						|
								  $mode = 'once';
							 | 
						|
								
							 | 
						|
								if($mode == 'run') {
							 | 
						|
								  if(function_exists('pcntl_signal')) {
							 | 
						|
								    pcntl_signal(SIGINT, function($sig){
							 | 
						|
								      global $pcntl_continue;
							 | 
						|
								      $pcntl_continue = FALSE;
							 | 
						|
								    });
							 | 
						|
								  }
							 | 
						|
								}
							 | 
						|
								$pcntl_continue = TRUE;
							 | 
						|
								
							 | 
						|
								define('PDO_SUPPORT_DELAYED', TRUE);
							 | 
						|
								
							 | 
						|
								// TODO: add support for forking and running many workers in parallel
							 | 
						|
								// e.g. `php run.php 10`
							 | 
						|
								
							 | 
						|
								require 'vendor/autoload.php';
							 | 
						|
								
							 | 
						|
								if($mode == 'once') {
							 | 
						|
								  DeferredTask::run_once();
							 | 
						|
								} else {
							 | 
						|
								  DeferredTask::run();
							 | 
						|
								}
							 |