Aller au contenu principal

Réglage de la Détection en Cache

La détection en cache est une fonctionnalité d'optimisation qui peut améliorer significativement les performances de votre macro en réduisant le nombre de captures d'écran nécessaires pendant l'exécution.

Comprendre la Détection en Cache

Par défaut, votre macro capture l'écran chaque fois qu'elle doit effectuer une détection de texte ou d'image. Bien que cela garantisse la précision, cela peut être intensif en termes de calcul. La détection en cache vous permet de stocker et de réutiliser la dernière image capturée, réduisant ainsi la surcharge des captures d'écran répétées.

Utilisation des Paramètres de Cache

Activer le Cache

# activer le cache
Settings:cacheOn();

Lorsque le cache est activé :

  • La macro stocke la dernière image capturée en mémoire temporaire
  • Les opérations de détection suivantes utilisent l'image en cache au lieu d'en capturer une nouvelle
  • Réduit significativement l'utilisation du CPU et de la mémoire pendant les opérations de détection rapides

Désactiver le Cache

# désactiver le cache
Settings:cacheOff();

Lorsque le cache est désactivé :

  • La macro capture une nouvelle image pour chaque opération de détection
  • Fournit les informations d'écran les plus à jour
  • Utile lorsque le contenu de l'écran change fréquemment

Bonnes Pratiques

  1. Activer le cache quand :

    • Vous effectuez plusieurs détections en succession rapide
    • Le contenu de l'écran reste relativement statique
    • L'optimisation des performances est une priorité
  2. Désactiver le cache quand :

    • Le contenu de l'écran change rapidement
    • Une précision absolue de détection est requise
    • L'utilisation de la mémoire est une préoccupation

Exemple d'Utilisation

# Activer le cache pour une séquence de détections liées
Settings:cacheOn();
Screen:find('Button 1.jpg');
Screen:find('Button 2.jpg');
Screen:find('Button 3.jpg');

# Désactiver le cache une fois terminé
Settings:cacheOff();

Paramètres Associés

Vous pouvez combiner la détection en cache avec d'autres paramètres d'optimisation :

  • Settings:grayscaleOn() - Améliorer davantage les performances en traitant en niveaux de gris
  • Settings:setScanInterval() - Ajouter des délais entre les opérations de détection
  • Settings:setMinScore() - Ajuster le seuil de précision de détection