Sepi

Name
  TScCustomTaskQueue

Parent
  ScSyncObjs

Class Hierarchy
  TThread

Visibility
  PUBLIC

Description
  Gestionnaire de file (FIFO) de tâches
TScCustomTaskQueue est une classe de base pour l'implémentation de files de
tâches, qui s'exécutent de façon synchrone entre elles, mais asynchrone par
rapport au contrôleur.
Puisque TScCustomTaskQueue hérite de TThread au lieu de l'encapsuler, le
contrôleur a plein accès sur le déroulement du thread de répartition.
Un appel à la méthode Terminate mettra fin à la répartition des tâches,
même si la file n'est pas vide.
Pour attendre que la liste des messages en attente soit vide, utilisez la
propriété Ready, et non la méthode WaitFor. Pour attendre qu'une tâche en
particulier soit terminée, les descendants de TScCustomTaskQueue peuvent
offrir l'accès aux objets TScTask, qui proposent une méthode WaitFor.
Vous pouvez positionner la propriété TerminateOnException à False si vous
ne voulez pas que le traitement des messages s'arrête en cas d'exception
lors de l'un d'eux.
Les descendants de TScTaskQueue ne devraient normalement pas réimplémenter
la méthode Execute.

Members
  Fields
 
Field Description
FCriticalSection (-) Section critique sur la liste
FDefaultFreeOnFinished (-) Valeur par défaut de la propriété FreeOnFinished des tâches de la file
FReady (-) Indique si la file a terminé son travail
FTerminateOnException (-) Indique si le thread d'exécution doit se terminer en cas d'exception
FWaitingQueue (-) File des messages en attente

Methods
 
Method Description
BeforeDestruction (+) [@inheritDoc]
Cancel (-) Retire une tâche de la file d'attente
Create (+) Crée une liste de tâches
Destroy (+) [@inheritDoc]
Execute (#) [@inheritDoc]
Pop (-) Récupère la tâche suivante dans la file d'attente
Push (-) Ajoute une tâche à la file

Properties
 
Property Description
CriticalSection (#) Section critique sur la liste
DefaultFreeOnFinished (#) Valeur par défaut de la propriété FreeOnFinished des tâches de la file
Ready (#) Indique si la file a terminé son travail
TerminateOnException (#) Indique si le thread d'exécution doit se terminer en cas d'exception
WaitingQueue (#) File des messages en attente


Legend
 
Symbol Visibility
- Private
# Protected
+ Public
* Published
A Automated
S Strict

Sepi


Copyright (c) 2006-2010 Sébastien Doeraene
Created with DelphiCodeToDoc. To obtain the latest revision, please visit http://dephicodetodoc.sourceforge.net/