如何用elysia cron重置cron任务?

时间:2017-04-11 14:16:44

标签: cron drupal-7

我无法重置cron任务。 我确实强行跑,而不是跑cron而且没什么。 mymodule_queue_function - 不执行,$ count总是增加。 我在维护设置中尝试重置计数(重置统计信息),但它不起作用。 我该如何解决?

mymodule_cronapi($op, $job = NULL) {
  $items['functions_cron_month_prepare'] = array( 
    'description' => 'users pay for services', 
    'rule' => '4 0 24 * *',
    'arguments' => array(5),
    'callback' => 'mymodule_select_month_prepare', 
  );
  return $items; 
}

// /** * Implementation of hook_cron_queue_info() */ 
function tariffing_cron_queue_info() {
  $queues['mymodule_queue_main'] = array(
    'worker callback' => 'mymodule_queue_function',
    'time' => 3600,
    );
  return $queues;
}

function mymodule_select_month_prepare() {
 if($users) {
      foreach ($users as $usr) {
        $usr_s[$usr['uid']][] = $usr['service_name'];
      }

      $n = round(count($usr_s)/4);
      $items = count($usr_s) > 4 ? array_chunk($usr_s, $n, true) : array(0 => $usr_s);

      $queue = DrupalQueue::get('mymodule_queue_main');
      foreach ($items as $item) {
        $count = $queue->numberOfItems();
        $queue->createItem($item);
      }
    }
}

function mymodule_queue_function($data) {
  watchdog('$data_users', print_r($data,true));
}

1 个答案:

答案 0 :(得分:0)

通过替换函数名称解决了问题。但出现了另一个问题: 我的cron任务的时间是(4 0 1 * *)但现在是第25天,并且执行了作业任务。为什么??我错了什么? 可能会发生这种情况我删除了所有cron执行统计信息吗?