internal void AddPersonToCashier() { var emptyCashier = from c in cashiers where c.CurrPerson == null select c; Cashier cash = emptyCashier.FirstOrDefault(); Console.WriteLine("number of occupied cashiers: {0}", cashiers.Length - emptyCashier.Count()); if (cash != null) { cash.AddCurrPerson(front.data); Dequeue(); } }
private void OnStart() { while (true) { id++; Enqueue(new Person { Id = id, Name = "Person" + id }); Thread.Sleep(1000); var emptyCashier = from c in cashiers where c.CurrPerson == null select c; Cashier cash = emptyCashier.FirstOrDefault(); if (cash != null) { Person p = Dequeue(); // Call the Event //ev_AddPerson?.Invoke(this, p); cash.AddCurrPerson(p); } } }