--- /dev/null
+/**
+ * Implements hook_cron().
+ */
+function {{ machine_name }}_cron() {
+ // Short-running operation example, not using a queue:
+ // Delete all expired records since the last cron run.
+ $expires = variable_get('mymodule_cron_last_run', REQUEST_TIME);
+ db_delete('mymodule_table')
+ ->condition('expires', $expires, '>=')
+ ->execute();
+ variable_set('mymodule_cron_last_run', REQUEST_TIME);
+
+ // Long-running operation example, leveraging a queue:
+ // Fetch feeds from other sites.
+ $result = db_query('SELECT * FROM {aggregator_feed} WHERE checked + refresh < :time AND refresh <> :never', array(
+ ':time' => REQUEST_TIME,
+ ':never' => AGGREGATOR_CLEAR_NEVER,
+ ));
+ $queue = DrupalQueue::get('aggregator_feeds');
+ foreach ($result as $feed) {
+ $queue->createItem($feed);
+ }
+}