// Threadeinführung_03.cpp: Hauptprojektdatei.

#include "stdafx.h"

using namespace System;
using namespace System::Threading;
using namespace System::Threading::Tasks;

void tueEtwas(int n)
{
   Thread::SpinWait(n * 100000000);
   Console::WriteLine(" Aufruf für " + n + " beendet.");
}



int main(array<System::String ^> ^args)
{
   Console::WriteLine("Programm gestartet");

   Action<int>^ fkt = gcnew Action<int>(tueEtwas);

   Parallel::For(0, 20, fkt);

   // Simulation einer weiteren Aufgabe im Hauptthread
   Console::WriteLine(" Hauptthread erledigt weitere Aufgaben");
   Thread::SpinWait(10000*100000);
   
   Console::WriteLine("Zum Beenden Eingabetaste druecken");
   Console::ReadLine();
   return 0;
}
