using System;
using System.Threading;

namespace Threadeinführung_02
{
    class Program
    {
        static void doSomething(int n)
        {
            Thread.SpinWait(n * 10000000);
            Console.WriteLine(" Aufruf für " + n + " beendet.");
        }

        static void h()
        {
            for (int n = 0; n < 20; ++n)
            {
                doSomething(n);
            }
        }


        static void Main(string[] args)
        {
            Console.WriteLine("Programm gestartet");

           // Ausführung der Funktion h in einem eigenen Thread
           ThreadStart ts = new ThreadStart(h);
           Thread t = new Thread(ts);
           t.Start();  

           // Simulation einer weiteren Aufgabe im Hauptthread
           Console.WriteLine(" Hauptthread erledigt weitere Aufgaben");
           Thread.SpinWait(10000*100000);

            Console.WriteLine("Zum Beenden Eingabetaste druecken");
            Console.ReadLine();
        }
    }
}
