Manuel de suivi dynamique Solaris

Actions spéciales

Cette section décrit les actions qui ne sont ni des actions d'enregistrement de données ni des actions destructrices.

Actions spéculatives

Les actions associées à un suivi spéculatif sont les actions speculate(), commit()et discard(). Vous trouverez plus d'informations sur ces actions au Chapitre13Suivi spéculatif.

exit()

void exit(int status)

L'action exit() est utilisée pour interrompre immédiatement le suivi et pour informer le consommateur DTrace qu'il doit interrompre le suivi, effectuer tout traitement final et appeler exit(3C) avec l'état spécifié. Étant donné que exit() renvoie un état au niveau utilisateur, il s'agit d'une action d'enregistrement de données. Toutefois, contrairement aux autres actions de stockage de données, exit() ne peut pas faire l'objet d'un suivi spéculatif. exit() provoquera la fermeture du consommateur DTrace, quelle que soit la stratégie de tampon. Étant donné que exit() est une action d'enregistrement de données, il est possible de l'abandonner.

Lorsque exit() est appelé, seules les actions DTrace déjà en cours d'exécution sur d'autres CPU seront terminées. Aucune nouvelle action ne se produira sur aucune CPU. La seule exception à cette règle est le traitement de la sonde END qui est appelée après que le consommateur DTrace a traité l'action exit() et indiqué que le suivi devait être arrêté.