Documentation du code de SPIP et de ses plugins

SPIP

genie.php

Table of Contents

Functions

inc_genie_dist()  : mixed
Prévoit l'exécution de la tâche cron la plus urgente
taches_generales()  : mixed
genie_queue_watch_dist()  : int
Une tâche périodique pour surveiller les tâches crons et les relancer si besoin
queue_genie_replan_job()  : void
Replanifier une tache periodique

Functions

inc_genie_dist()

Prévoit l'exécution de la tâche cron la plus urgente

inc_genie_dist([array<string|int, mixed> $taches = [] ]) : mixed

Les tâches sont dans un tableau 'nom de la tâche' => périodicité

Cette fonction exécute la tache la plus urgente, c'est à dire celle dont la date de dernière exécution + la périodicité est minimale.

La date de la prochaîne exécution de chaque tâche est indiquée dans la table SQL spip_jobs

La fonction exécutant la tâche est (généralement) un homonyme de préfixe "genie_". Le fichier homonyme du repertoire "genie/" est automatiquement lu et il est supposé définir cette fonction.

Parameters
$taches : array<string|int, mixed> = []

Tâches dont on force maintenant l'exécution le plus tôt possible. Sinon, prendra la tâche la plus prioritaire.

Tags
uses
queue_add_job()

Lorsqu'une tâche est à forcer

uses
queue_schedule()
see
taches_generales()

Liste des tâches déclarées

used-by
cron()

taches_generales()

taches_generales([mixed $taches_generales = [] ]) : mixed
Parameters
$taches_generales : mixed = []

genie_queue_watch_dist()

Une tâche périodique pour surveiller les tâches crons et les relancer si besoin

genie_queue_watch_dist() : int

Quand ce cron s'execute, il n'est plus dans la queue, donc il se replanifie lui même, avec last=time() avec une dose d'aleatoire pour ne pas planifier toutes les taches au meme moment

Tags
uses
taches_generales()
uses
queue_genie_replan_job()
Return values
int

queue_genie_replan_job()

Replanifier une tache periodique

queue_genie_replan_job(string $function, int $period[, int $last = 0 ][, int $time = null ][, int $priority = 0 ]) : void
Parameters
$function : string

nom de la fonction a appeler

$period : int

periodicite en secondes

$last : int = 0

date du dernier appel (timestamp)

$time : int = null

date de replanification si null calculee automaitquement a partir de $last et $period si 0 = asap mais on n'insere pas le job si deja en cours d'execution

$priority : int = 0

priorite

Tags
used-by
genie_queue_watch_dist()
used-by
queue_close_job()

        
On this page

Search results