System.SyncObjs.TLightweightEvent

De RAD Studio API Documentation
Aller à : navigation, rechercher

System.SyncObjs.TSynchroObjectSystem.TObjectTLightweightEvent

Delphi

TLightweightEvent = class(TSynchroObject)

C++

class PASCALIMPLEMENTATION TLightweightEvent : public TSynchroObject

Propriétés

Type Visibilité  Source Unité  Parent
class public
System.SyncObjs.pas
System.SyncObjs.hpp
System.SyncObjs System.SyncObjs

Description

Représente un mécanisme léger de signalisation entre threads.

Les threads peuvent utiliser TLightweightEvent pour synchroniser leur activité. L'exécution des threads n'est généralement pas parfaitement indépendante. Un thread doit parfois attendre qu'un autre thread atteigne un point d'exécution spécifique.

TLightweightEvent implémente un événement de réinitialisation manuelle en utilisant seulement des opérations atomiques.

TLightweightEvent peut prendre les états suivants :


Non signalé Les threads ne peuvent pas s'exécuter de façon indépendante. Un thread qui appelle WaitFor dépense un certain nombre de cycles dans des boucles d'attente et il peut être bloqué au niveau du noyau.
Signalé Les threads peuvent s'exécuter de façon indépendante.


TLightweightEvent doit être utilisé dans des cas où les intervalles non signalés sont relativement courts. Si TLightweightEvent est utilisé dans des cas où la plupart des appels à WaitFor bloquent le thread appelant, les performances peuvent alors être légèrement inférieures en comparaison à TSimpleEvent.


Voir aussi

Exemples de code