Beispiel #1
0
 public void farmerFunc()
 {
     for (Int32 i = 0; i < 50; i++)
     {
         Thread.Sleep(500);
         Int32 p = rng.Next(5, 10);
         Console.WriteLine("new price is {0}", p);
         ChickenFarm.changePrice(p);
     }
 }
Beispiel #2
0
        public void retailerFunc()
        {
            ChickenFarm chicken = new ChickenFarm();

            for (Int32 i = 0; i < 10; i++)
            {
                Thread.Sleep(1000);
                Int32 p = chicken.getPrice();
                Console.WriteLine("Store{0} has everyday low price: ${1} each", Thread.CurrentThread.Name, p); //prints the name
            }
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            ChickenFarm chicken = new ChickenFarm();
            Thread      farmer  = new Thread(new ThreadStart(chicken.farmerFunc));

            farmer.Start();         //Start one farmer thread
            Retailer chickenstore = new Retailer();

            ChickenFarm.priceCut += new priceCutEvent(chickenstore.chickenOnSale);
            Thread[] retailers = new Thread[3];
            for (Int32 i = 0; i < 3; i++)
            {
                //Start N retailer threads
                retailers[i]      = new Thread(new ThreadStart(chickenstore.retailerFunc));
                retailers[i].Name = (i + 1).ToString();
                retailers[i].Start();
            }
        }