Esempio n. 1
0
        static void Main(string[] args)
        {
            var peopleGenerator = new PeopleGenerator();

            Console.Write("Enter store opening hours(in minutes): ");
            int.TryParse(Console.ReadLine(), out int shopOpeningHours);

            var shop = new Shop(peopleGenerator, 3, shopOpeningHours);

            shop.Open();
        }
Esempio n. 2
0
        public Shop(PeopleGenerator peopleGenerator, int cashierNumber, int shopOpeningHours)
        {
            _peopleGenerator = peopleGenerator;
            _processingQueue = new Queue <Person>();

            _processors = new List <Thread>();
            for (int i = 0; i < cashierNumber; i++)
            {
                _processors.Add(new Thread(ProcessPeople));
            }

            _random = new Random();

            _queueProcessingThread = new Thread(EnterShop);

            _storeClosingTime = DateTime.Now.AddMinutes(shopOpeningHours);
        }