Service ScriptForge.Timer (2024)

Le service Timer mesure le temps nécessaire à l'exécution des scripts utilisateur.

Un Timer mesure les durées. Ça peut être:

  • Démarré, pour indiquer quand commencer à mesurer le temps.

  • Suspendu, pour suspendre la mesure du temps de fonctionnement.

  • Reprise, pour continuer à suivre le temps d'exécution après la suspension du minuteur.

  • Redémarré, ce qui annulera les mesures précédentes et démarrera le Timer à zéro.

Service ScriptForge.Timer (1)

Les durées sont exprimées en secondes avec une précision de 3 chiffres décimaux (millisecondes). Une valeur de durée de 12,345 signifie 12 secondes et 345 millisecondes


Invocation du service

Avant d'utiliser le service Timer, la bibliothèque ScriptForge doit être chargée ou importée:

Service ScriptForge.Timer (2)

• Les macros Basic nécessitent de charger la bibliothèque ScriptForge à l'aide de l'instruction suivante:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Les scripts Python nécessitent un import depuis le module scriptforge:
from scriptforge import CreateScriptService


En Basic :

L'exemple ci-dessous crée un objet Timer nommé myTimer et le démarre immédiatement.

 GlobalScope.BasicLibraries.LoadLibrary("ScriptForge") Dim myTimer As Variant myTimer = CreateScriptService("Timer", True) 'Le minuteur démarre immédiatement lorsque le deuxième argument = True, par défaut = False 

Il est recommandé de libérer des ressources après utilisation :

 Set myTimer = myTimer.Dispose() 
En Python
 from scriptforge import CreateScriptService myTimer = CreateScriptService("Timer", start = True) # ... myTimer = myTimer.Dispose() 

Propriétés

Nom

Lecture seule

Type

Description

Duration

Oui

Double

Le temps de fonctionnement réel écoulé depuis le démarrage ou entre le démarrage et l'arrêt (ne prend pas en compte le temps suspendu)

IsStarted

Oui

Boolean

True lorsque le minuteur est démarré ou suspendu

IsSuspended

Oui

Boolean

True lorsque le minuteur est démarré et suspendu

SuspendDuration

Oui

Double

Le temps réel écoulé pendant la suspension depuis le démarrage ou entre le démarrage et l'arrêt

TotalDuration

Oui

Double

Le temps réel écoulé depuis le démarrage ou entre le démarrage et l'arrêt (y compris les suspensions et le temps de fonctionnement)


Service ScriptForge.Timer (3)

Notez que la propriété TotalDuration équivaut à la somme des propriétés Duration et SuspendDuration.


Méthodes

Toutes les méthodes ne nécessitent pas d'arguments et renvoient une valeur Boolean.

Si la valeur renvoyée est False, alors rien ne s'est produit.

Nom

Description

Valeur renvoyée

Continue

Reprend le Timer s'il a été suspendu

False si le timer n'est pas suspendu

Restart

Termine le Timer et supprime ses valeurs de propriété actuelles, redémarrant en tant que nouveau Timer propre.

False si l'horloge n'est pas active

Start

Démarre une nouvelle horloge

False si l'horloge est déjà démarrée

Suspend

Suspend une horloge en cours d'exécution

False si l'horloge n'est pas démarrée ou déjà suspendue

Terminate

Arrête une horloge en cours d'exécution

False si l'horloge n'est ni démarrée ni suspendue


Exemple :

Les exemples ci-dessous en Basic et Python illustrent l'utilisation des méthodes et propriétés du service Timer.

En Basic :
 myTimer.Start() Wait 500 myTimer.Suspend() 'Le temps écoulé pendant que la boîte de dialogue est ouverte sera compté comme temps suspendu MsgBox myTimer.Duration & " " & myTimer.SuspendDuration & " " & myTimer.TotalDuration myTimer.Continue() Wait 500 'Le temps écoulé pendant que la boîte de dialogue est ouverte sera compté comme temps d'exécution MsgBox myTimer.Duration & " " & myTimer.SuspendDuration & " " & myTimer.TotalDuration myTimer.Terminate() 'Affiche les mesures de temps finales MsgBox myTimer.Duration & " " & myTimer.SuspendDuration & " " & myTimer.TotalDuration 

Service ScriptForge.Timer (4)

Si vous appelez la méthode Terminate, les appels suivants pour la méthode Continue ne reprendront pas la mesure du temps. De même, après la fin d'un Timer, l'appel de la méthode Start le redémarrera comme s'il s'agissait d'un nouveau Timer.


En Python
 from time import sleep bas = CreateScriptService("Basic") myTimer.Start() sleep(0.5) myTimer.Suspend() bas.MsgBox("{} {} {}".format(myTimer.Duration, myTimer.SuspendDuration, myTimer.TotalDuration)) myTimer.Continue() sleep(0.5) bas.MsgBox("{} {} {}".format(myTimer.Duration, myTimer.SuspendDuration, myTimer.TotalDuration)) myTimer.Terminate() bas.MsgBox("{} {} {}".format(myTimer.Duration, myTimer.SuspendDuration, myTimer.TotalDuration)) 

Service ScriptForge.Timer (5)

Sachez que la fonction Wait en BASIC prend un argument de durée en millisecondes alors que la fonction sleep en Python utilise des secondes dans son argument.


Travailler avec plusieurs horloges

Il est possible d'instancier plusieurs services Timer en parallèle, ce qui donne de la flexibilité dans la mesure du temps dans différentes parties du code.

L'exemple suivant illustre comment créer deux objets Timer et les démarrer séparément.

En Basic :
 Dim myTimerA as Variant, myTimerB as Variant myTimerA = CreateScriptService("Timer") myTimerB = CreateScriptService("Timer") 'Starts myTimerA myTimerA.Start() Wait 1000 'Wait 1 second (1,000 milliseconds) MsgBox myTimerA.Duration & " " & myTimerB.Duration 'Starts myTimerB myTimerB.Start() Wait 1000 MsgBox myTimerA.Duration & " " & myTimerB.Duration 'Terminer les deux horloges myTimerA.Terminate() myTimerB.Terminate() 
En Python
 from time import sleep myTimerA = CreateScriptService("Timer") myTimerB = CreateScriptService("Timer") myTimerA.Start() sleep(1) bas.MsgBox("{} {}".format(myTimerA.Duration, myTimerB.Duration)) myTimerB.Start() sleep(1) bas.MsgBox("{} {}".format(myTimerA.Duration, myTimerB.Duration)) myTimerA.Terminate() myTimerB.Terminate() 

Service ScriptForge.Timer (6)

Toutes les routines ou identifiants de base ScriptForge qui sont préfixés par un caractère de soulignement "_" sont réservés à un usage interne. Ils ne sont pas destinés à être utilisés dans des macros de base ou des scripts Python.


Rubriques connexes

Fonction Now

Fonction Timer

Service ScriptForge.Timer (2024)

FAQs

What is the watchdog timer service? ›

The watchdog timer communicates with the MCU at a set interval. If the MCU does not output a signal, outputs too many signals or outputs signals that differ from a predetermined pattern, the timer determines that the MCU is malfunctioning and sends a reset signal to the MCU.

What is an example of a timer service? ›

A TimerService instance is injected by the container when the bean is created. Because it's a business method, setTimer is exposed to the local, no-interface view of TimerSessionBean and can be invoked by the client. In this example, the client invokes setTimer with an interval duration of 30,000 milliseconds.

What is timer interrupt service routine? ›

An event that causes the CPU to stop executing current program. • Begin executing a special piece of code. • Called an interrupt handler or interrupt service routine (ISR)

What is the reason for watchdog timer? ›

Why Are Watchdog Timers So Important? Watchdog timers provide a method for alerting a system or resetting a processor whose software has experienced a freeze or hang. While no one purposely designs software to freeze, good system designers plan for failures anyway – as it's always better to prepare for the unexpected.

What is an example of a watchdog timer? ›

An example of this is the CLRWDT (clear watchdog timer) instruction found in the instruction set of some PIC microcontrollers. In computers that are running operating systems, watchdog restarts are usually invoked through a device driver.

What are the three major types of timers? ›

There are three main types of PLC timers: – The on-delay timer, – The off-delay timer, – The retentive on-delay timer.

What are the three modes of timer? ›

Operating Modes of Timers
  • ON-Delay Operation: In this mode of operation, the timer counts the output of the system after a specific interval of the specified delay. ...
  • OFF-Delay Operation: ...
  • Flicker Operation. ...
  • Interval Operation.
Oct 29, 2019

What is the most common timer? ›

The 555 timer IC is without doubt one of the most important and widely used single ICs in history. The design has remained unchanged for over 40 years, which makes it one of the longest running IC designs.

How do you write an interrupt service routine? ›

Use simple flags to indicate that an event has occurred. The main program or another thread can monitor these flags and handle the necessary processing when it is safe to do so. Implement queues to pass data from the ISR to other threads.

How do you make a timer interrupt? ›

CTC timer interrupts are triggered when the counter reaches a specified value, stored in the compare match register. Once a timer counter reaches this value it will clear (reset to zero) on the next tick of the timer's clock, then it will continue to count up to the compare match value again.

What is the difference between timer and interrupt? ›

Timers can be used to generate periodic signals, such as pulses, waves, or PWM signals, or to measure time intervals, such as delays, durations, or timeouts. Timers can also trigger interrupts when they reach a certain value, allowing you to execute a function at a regular interval or after a specified delay.

Is it safe to uninstall Dell watchdog timer? ›

When running the Watchdog utility, you will receive an error about enabling the Watchdog function in the BIOS, but the BIOS option is missing. If the utility was preinstalled and not configured, it is safe to uninstall.

What is the watchdog timer on my computer? ›

The Watchdog Timer feature is used to recover the operating system during the following instances:
  1. During POST of the computer to ensure that the computer initialization is completed properly by the BIOS/UEFI.
  2. During the transition from BIOS/UEFI to the operating system through an operating system Watchdog Timer driver.

Why disable watchdog timer? ›

The watchdog timer keeps asserting the watchdog output (WDO) before the bootup finishes in applications where the bootup process is longer than the watchdog timeout period. This creates a deadlock and the MCU hangs forever.

How do I fix watchdog timer error? ›

1 answer
  1. Check Hardware Connections: Ensure that all hardware components (CPU, RAM, GPU, etc.) ...
  2. Update Drivers: Outdated or incompatible drivers can cause this error. ...
  3. Check for Overheating: ...
  4. BIOS Update: ...
  5. Check for Hardware Issues: ...
  6. Check Power Supply Unit (PSU): ...
  7. Disable Overclocking: ...
  8. Check for Malware:
Apr 8, 2024

Top Articles
Latest Posts
Article information

Author: Allyn Kozey

Last Updated:

Views: 5671

Rating: 4.2 / 5 (63 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Allyn Kozey

Birthday: 1993-12-21

Address: Suite 454 40343 Larson Union, Port Melia, TX 16164

Phone: +2456904400762

Job: Investor Administrator

Hobby: Sketching, Puzzles, Pet, Mountaineering, Skydiving, Dowsing, Sports

Introduction: My name is Allyn Kozey, I am a outstanding, colorful, adventurous, encouraging, zealous, tender, helpful person who loves writing and wants to share my knowledge and understanding with you.