Comportement du rappel EventSource
Pour un EventCommand.Disable, EventSource est maintenant marqué comme désactivé avant l’émission du rappel.
Comportement précédent
Auparavant, le rappel EventSource.OnEventCommand(EventCommandEventArgs) était émis pour EventCommand.Disable avant de définir m_eventSourceEnabled=false
.
Cela signifie que EventSource.IsEnabled() retournait true
dans le rappel OnEventCommand(EventCommandEventArgs) pour un utilisateur EventSource, même si la commande conduisait à la désactivation de EventSource
. Le rappel se produisait une fois la possibilité de distribuer des événements désactivée. Par conséquent, même si un événement EventSource
essayait de déclencher un événement, il n’était pas écrit.
Nouveau comportement
À présent, le EventSource est marqué comme désactivé avant l’émission du rappel pour EventCommand.Disable.
Version introduite
- Maintenance de .NET 6
- Maintenance de .NET 7
Type de changement cassant
Ce changement est un changement de comportement.
Raison du changement
Ce changement était nécessaire pour prendre en charge plusieurs instances de EventCounter. La possibilité d’avoir plusieurs instances a été demandée par de nombreux clients.
En outre, EventCommand.Enable a toujours proposé une vue cohérente : EventSource.IsEnabled() signale avec précision l’état activé, et EventSource
peut écrire des événements à partir du rappel OnEventCommand
. Cette modification rend cohérent le comportement de EventCommand.Disable
avec EventCommand.Enable
.
Action recommandée
Il est peu probable qu’il existe un scénario où le comportement précédent est souhaité et qu’il n’existe aucun moyen de rétablir le comportement.