J'ai deux implémentations de la vérification des données à venir:fil vs minuterie en C#
Utilisation System.Timers.Timer
:
public void startTimer()
{
try
{
System.Timers.Timer timer = new System.Timers.Timer(1);
timer.AutoReset = true;
timer.Elapsed += new ElapsedEventHandler(commStart);
timer.Enabled = true;
timer.Start();
}
catch(Exception ex){}
}
private void commStart(){object sender, EventArgs eArgs}
Utilisation Thread
:
public void startThread()
{
Thread threadGeneralComm = new Thread(new ThreadStart(commStart));
threadGeneralComm.Start()
}
private void commStart()
{
while(true)
{
// checking data
Thread.Sleep(1);
}
}
Vous pouvez le voir, les deux façons de mise en œuvre, il va vérifier les données et attendre 1 milliseconde. Les gens se plaignent que l'utilisation de Timer est pire que l'utilisation de Thread, et l'utilisation d'un Thread est 10 fois plus rapide. Est-ce le cas?
que voulez-vous dire? – olidev
Données provenant d'où? Comme d'autres affiches l'ont dit, l'interrogation ne devrait pas être nécessaire dans un mutitasker préemptif - elle gaspille le CPU et ajoute de la latence. –