Classe file d'attente (stereotype)

De Wiki1000
(Différences entre les versions)
(Méthode du stéréotype)
(Méthode du stéréotype)
Ligne 46 : Ligne 46 :
 
|-
 
|-
 
|[[Dequeue (TStereotypeClassQueue)|DeQueue]]
 
|[[Dequeue (TStereotypeClassQueue)|DeQueue]]
|Obtient le premier objet disponible de la queue.
+
|Consomme le premier objet disponible de la queue.
 +
|-
 +
|[[DequeueNext (TStereotypeClassQueue)|DeQueueNext]]
 +
|Consomme l'objet suivant disponible de la queue.
 
|-
 
|-
 
|[[GetFirst (TStereotypeClassQueue)|GetFirst]]
 
|[[GetFirst (TStereotypeClassQueue)|GetFirst]]

Version du 17 avril 2013 à 10:30

version650-48x48.png

Ce stéréotype permet de gérer des files d'attente ayant plusieurs consommateurs.

Une classe file d'attente peut avoir un ou plusieurs producteurs de données et un ou plusieurs consommateurs de données.

Par construction un objet de la file d'attente ne peut être consommé que par et un seul consommateur de donnée.

Attributs du stéréotype

queueID Identifiant unique d'un objet de la queue.
queueTopic Sujet auquel appartient l'objet de la queue.
queueState Etat de l'objet dans la queue.
queueRef Référence vers un objet associée à cet objet.

Méthode du stéréotype

Méthodes de l'instance :

Archive Archive le message dans la queue.
ReQueue Ré-empile le message dans la queue.
DeleteThisObject Supprime l'objet consommé.

Méthodes de classe :

inQueue Insérer des objets dans la file à partir d'une classe source
DeQueue Consomme le premier objet disponible de la queue.
DeQueueNext Consomme l'objet suivant disponible de la queue.
GetFirst Obtient le premier objet disponible de la queue sans consommer l'objet.
GetNext Obtient l'objet suivant de la queue sans consommer l'objet.
Clean Supprime tous les objets consommés de la queue.

Exemples :

Créer un objet dans la queue :

procedure InQueue(const Atopic:string);
var inst:MyQueue;
begin
  withP private Transaction do
   begin
     inst := MyQueue.Create;
     inst.queueTopic := ATopic;
   end;
end;

Consommer le premier objet de la queue :

function DeQueue(const Atopic:string):Boolean;
var inst:MyQueue;
begin
  inst := MyQueue.DeQueue(ATopic);
  Result := Assigned(inst);
end;

Supprimer tous les objets consommés de la queue :

procedure Clean(const Atopic:string);
begin
  MyQueue.Clean(ATopic);
end;




Whos here now:   Members 0   Guests 0   Bots & Crawlers 1
 
Outils personnels