Problemas con el uso de Thread.Sleep por cortos tiempos

Tengo una aplicación con 2 hilos (ahora), pero parece que la función Thread.Sleep () no funciona muy bien. Duerme hilos pero lleva mucho más tiempo (por ejemplo, quiero dormirlo durante 5 ms y duerme durante 0,3 segundos o más). Aquí está el código:

int vlakien = 2;
Thread[] vlakna; 
vlakna = new Thread[vlakien];

for (int i = 0; i < vlakien; i++) 
{ try { vlakna[i] = new Thread(new ThreadStart(utok)); vlakna[i].Start(); } }

private void utok()
{
  //some code
  Thread.Sleep(5);
  //some code
}

También intenté dormirlo con el cronómetro en la función utok y también lleva más tiempo:

Stopwatch SW = new Stopwatch(); SW.Start();
while(SW.ElapsedMilliseconds < 5000) ;

Por favor ayuda

Respuestas a la pregunta(10)

Su respuesta a la pregunta