System.Classes.TThread.Yield

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

class procedure Yield; static;

C++

static void __fastcall Yield();

Propriétés

Type Visibilité  Source Unité  Parent
procedure
function
public
System.Classes.pas
System.Classes.hpp
System.Classes TThread

Description

Transmet l'exécution à un autre thread.

Yield notifie au système qu'il peut transmettre l'exécution au thread suivant prévu sur le processeur en cours. Le système d'exploitation sélectionne le thread suivant.

Remarque : Cette méthode est limitée au processeur qui exécute le thread appelant.

Yield affecte tout le système. Le SE décide quel thread s'exécute, mais pas nécessairement à partir du même processus. Tous les threads sont planifiés en fonction de leur priorité, quel que soit le processus. Vous n'obtiendrez jamais un type de "modèle" attendu car la planification des threads est un processus dynamique qui est affecté par tous les autres threads s'exécutant sur le système, incluant les threads des services et du noyau. En fait, le SE donne la priorité automatiquement et dynamiquement à un thread s'il observe que ce thread n'a pas été planifié depuis quelque temps. Cela contrôle la privation des threads et le verrouillage des convois. Le verrouillage des convois peut survenir lorsqu'un thread tient un verrou pour une période excédant le temps requis pour les nouvelles tâches/threads de demander l'entrée du verrou.


Voir aussi

Exemples de code