fork download
  1. using System;
  2. using System.Threading;
  3.  
  4. namespace Recetas.Multithreading.Cap01
  5. {
  6. internal class UsoThreadJoinTimeSpan
  7. {
  8. // Instancia TimeSpan que representa un
  9. // intervalo de tiempo de 2 segundos
  10. private static TimeSpan tiempoEspera = new TimeSpan (0, 0, 1);
  11.  
  12. public static void Main()
  13. {
  14. // Creación de instancia de Thread para
  15. // encapsular el método Tarea:
  16. Thread nuevoThread = new Thread (Tarea);
  17. nuevoThread.Start();
  18.  
  19. // Espera durante dos segundos:
  20. if (nuevoThread.Join (tiempoEspera + tiempoEspera))
  21. {
  22. Console.WriteLine ("\n`nuevoThread` ha terminado.");
  23. }
  24. else
  25. {
  26. Console.WriteLine ("\nEl tiempo de espera ha caducado.");
  27. }
  28. }
  29.  
  30. private static void Tarea()
  31. {
  32. Thread.Sleep (tiempoEspera);
  33. }
  34. }
  35. }
Success #stdin #stdout 0.03s 35824KB
stdin
Standard input is empty
stdout
`nuevoThread` ha terminado.