Thread vs-Timer in C#

Habe ich zwei Implementierungen zu überprüfen, für die kommenden Daten:

Mit 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}

Mit Thread:

public void startThread()
{
   Thread threadGeneralComm = new Thread(new ThreadStart(commStart));

   threadGeneralComm.Start()
}

private void commStart()
{
   while(true)
   {
       //checking data
       Thread.Sleep(1);
   }
}

Damit Sie sehen können, sowohl von der Umsetzung Möglichkeiten, es zu überprüfen, Daten und warten Sie, bis 1 Millisekunde. Die Leute beschweren sich zu mir, mit Timer schlechter ist als mit Thread, und einen Thread ist 10 mal schneller. Ist das der Fall?

was meinst du?
Die Daten kommen von wo? Wie die anderen Poster gesagt haben, polling sollte nicht notwendig sein, einen präemptiven mutitasker - es werden unnötigerweise CPU-Ressourcen und die Latenz erhöht.

InformationsquelleAutor olidev | 2011-06-07

Schreibe einen Kommentar