using System;
using System.Threading;
using System.Collections.Generic;
using System.Text;

namespace RunThreadds
{
   class Program
   {
      static void Main(string[] args)
      {
         Thread.CurrentThread.Name = "GŁÓWNY";
         Console.WriteLine("[{0}] Witaj.", Thread.CurrentThread.Name);
         Thread workerThread = new Thread(new ThreadStart(WorkerMethod));
         workerThread.Name = "WYKONAWCA";
         Console.WriteLine("[{0}] Tworzę nowy wątek roboczy {1}.",
            Thread.CurrentThread.Name, workerThread.Name);
         workerThread.Start();
         while (workerThread.IsAlive)
         {
            // nic nie rób dopóki się nie zakończy
         }
         Console.WriteLine("Wygląda na to, że wątek roboczy ukończył pracę.");

         Console.ReadLine();
      }

      static void WorkerMethod()
      {
         for (int i = 0; i < 20; i++)
         {
            Console.WriteLine("[{0}] Wykonuję pewne zadanie", Thread.CurrentThread.Name);
         }
      }
   }
}
