예제 #1
0
 /**
  * 下一个任务
  */
 protected static function next_sec()
 {
     if (self::$current == 59) {
         self::$current = 0;
     } else {
         self::$current += 1;
     }
 }
예제 #2
0
 /**
  * 运行任务
  * @param $interval
  * @return bool
  */
 public static function do_something($interval)
 {
     //TurnTable::debug();
     $tasks = TurnTable::get_task();
     if (empty($tasks)) {
         return false;
     }
     foreach ($tasks as $id => $task) {
         if (isset($task["unique"]) && $task["unique"]) {
             if (isset(self::$unique_list[$id]) && self::$unique_list[$id] >= $task["unique"]) {
                 continue;
             }
             self::$unique_list[$id] = isset(self::$unique_list[$id]) ? self::$unique_list[$id] + 1 : 0;
         }
         (new Process())->create_process($id, $task);
     }
     return true;
 }
예제 #3
0
 /**
  * 运行任务
  * @param $interval
  * @return bool
  */
 public static function do_something($interval)
 {
     //是否设置了延时执行
     if (!empty(self::$delay)) {
         foreach (self::$delay as $pid => $task) {
             if (time() >= $task["start"]) {
                 (new Process())->create_process($task["task"]["id"], $task["task"]);
                 unset(self::$delay[$pid]);
             }
         }
     }
     //TurnTable::debug();
     $tasks = TurnTable::get_task();
     if (empty($tasks)) {
         return false;
     }
     foreach ($tasks as $id => $task) {
         if (isset($task["unique"]) && $task["unique"]) {
             if (isset(self::$unique_list[$id]) && self::$unique_list[$id] >= $task["unique"]) {
                 continue;
             }
             self::$unique_list[$id] = isset(self::$unique_list[$id]) ? self::$unique_list[$id] + 1 : 0;
         }
         (new Process())->create_process($id, $task);
     }
     return true;
 }