Question

Je suis nouveau fils de manipulation.

Quel est le rôle de System.Diagnostics et System.Timers dans le contexte de Threading? Les deux sont alternative à l'autre ou ils mis en œuvre pour faire certaines tâches uniques?

Était-ce utile?

La solution

StopWatch est pour la mesure des intervalles de temps. Minuteries sont des méthodes de planification pour exécuter à un moment donné dans l'avenir. Ils sont complètement différents.

Autres conseils

L'espace de noms System.Diagnostics fournit des classes qui permettent vous d'interagir avec les processus du système, les journaux d'événements et les compteurs de performance.

Le System.Timers espace de noms fournit le composant Timer, qui vous permet de déclencher un événement sur un intervalle spécifié.

Soyez prudent avec System.Timers varier.

Il existe essentiellement trois minuteries dans .Net

System.Timers.Timer
System.Threading.Timer
System.Windows.Forms.Timer

Trois minuteries disponibles en .Net

L'essentiel à surveiller est le problème de la collection.

Si votre thread ne fait aucune référence à un objet après un certain point, il peut être nettoyé à. Ceci est en fait l'une des principales raisons pour le modèle IDisposable, parce que l'appel de disposer signifie que vous conservez l'objet en vie au moins jusqu'à la fin de l'appel Éliminez (). Ceci est la méthode appelée quand vous dites

using(var myobj = new System.Threading.Timers()) 
{
    //run program here 
} //Timer can be collected from now.

Comme une autre option que j'utilise BackgroundWorker classe dans mes applications avec de bons résultats

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top