static void Main(string[] args) { CashDesks obj = new CashDesks(); Console.WriteLine("Comand list \ntakebill \ntakebatch \ntotal \ninspect \nexit \n"); while (true) { string comands = Console.ReadLine(); string[] comand = comands.Split(' '); switch (comand[0]) { case "takebill": if (comand.Length > 2) { throw new ArgumentException("takebill takes only 1 argument"); } else { obj.TakeMoney(new Bill(int.Parse(comand[1]))); } break; case "takebatch": if (comand.Length > 2) { List <Bill> bills = new List <Bill>(); for (int i = 1; i < comand.Length; i++) { bills.Add(new Bill(int.Parse(comand[i]))); } obj.TakeMoney(new BatchBill(bills)); break; } else { throw new ArgumentException("takebatch must have more than 1 argument"); } case "total": obj.Total(); break; case "inspect": obj.Inspect(); break; case "exit": Environment.Exit(0); break; default: Console.WriteLine("Wrong option!"); break; } } }
public void Start() { tasks.Add(new Task(() => CreateCarts(10, token))); tasks.AddRange(CashDesks.Select(c => new Task(() => CashDeskWork(c, token)))); foreach (var task in tasks) { task.Start(); } }
public void Start() { tasks.Add(new Task(() => CreateCarts(10, token))); // метод в отдельном потоке tasks.AddRange(CashDesks.Select(c => new Task(() => CashDeskWork(c, token)))); // коллекция задач foreach (var task in tasks) { task.Start(); } }
public void Start() { tasks.Add(new Task(() => CreateCarts(10, token)));//запуск метода в асинхронном режиме tasks.AddRange(CashDesks.Select(s => new Task(() => CashDeskwork(s, token)))); foreach (var task in tasks) { task.Start(); } }
/// <summary> /// Стартуем модель /// </summary> public void Start() { IsWorking = true; Task.Run(() => CreateCards(10)); var cashDeskTasks = CashDesks.Select(c => new Task(() => CashDeskWork(c))); foreach (Task task in cashDeskTasks) { task.Start(); } }
public void Start() { isWorking = true; tasks.Add(new Task(() => CreateCarts(10, cancellation))); // var cash = CashDesks.FirstOrDefault(); //TODO: where queue is min tasks.AddRange(CashDesks.Select(c => new Task(() => CashDeskWork(c, cancellation)))); foreach (var task in tasks) { task.Start(); } }
public void Start() { isWorking = true; Task.Run(() => CreateCarts(10, CustomerSpeed)); var cashDeskTasks = CashDesks.Select(c => new Task(() => CashDeskWork(c, CashDeskSpeed))); foreach (var task in cashDeskTasks) { task.Start(); } }
public void Start() { isWorking = true; Task.Run(() => CreateCarts(10, CustomersSpeed));//Запустили в отдельном потоке var cashDesckTasks = CashDesks.Select(c => new Task(() => CashDeskWork(c, CashDeskSpeed)));//Сделали коллекцию задач foreach (var task in cashDesckTasks) { task.Start(); //Запускаем задачи в отдельных потоках } }
public void Start() { isWorking = true; tasks.Add(new Task(() => CreateCarts(10))); tasks.AddRange(CashDesks.Select(cashDesk => new Task(() => CashDeskWork(cashDesk)))); foreach (var task in tasks) { task.Start(); } }
/// <summary> /// Запуск компьютерной модели /// </summary> public void Start() { isWorking = true; // Запускает создание корзин Task.Run(() => CreateCarts(10, 10)); var cashDesksTasks = CashDesks.Select(c => new Task(() => CashDeskWork(c, 1000))); foreach (var task in cashDesksTasks) { task.Start(); } }
public ShopComputerModel() { var sellers = Generator.GetNewSeller(20); Generator.GetNewProduct(1000); foreach (var seller in sellers) { Sellers.Enqueue(seller); } for (int i = 0; i < 3; i++) { CashDesks.Add(new CashDesk(CashDesks.Count, Sellers.Dequeue())); } }
//генерирование и обработка классов public void Start() { isWorking = true;//запустили метод CreateCarts в отдельном потоке на выполнение //метод будет работать до тех пор пока мы его самостоятельно не остановим tasks.Add(new Task(() => CreateCarts(10, token))); //для каждого потока отдельно запускаем выполнение метода CashDeskWork //создание коллекции задач,внутри каждой задачи находится касса которая бесконечно работает в своем собственном потоке tasks.AddRange(CashDesks.Select(c => new Task(() => CashDeskWork(c, token)))); foreach (var task in tasks) { task.Start(); } }
public ShopComputerModel() { List <Seller> sellers = Generator.GetNewSellers(20); Generator.GetNewProducts(1000); Generator.GetNewCustomers(100); foreach (Seller seller in sellers) { Sellers.Enqueue(seller); } for (int i = 0; i < 3; i++) { CashDesks.Add(new CashDesk(CashDesks.Count, Sellers.Dequeue(), null)); } }
public ShopComputerModel() { var freeSellers = Generator.GetSellers(20); cancellationTokenSource = new CancellationTokenSource(); token = cancellationTokenSource.Token; Generator.GetProducts(1000); Generator.GetCustomers(100); foreach (var seller in freeSellers) { Sellers.Enqueue(seller); } for (int i = 0; i < 3; i++) { CashDesks.Add(new CashDesk(CashDesks.Count, Sellers.Dequeue(), null)); } }
public ShopComputerModel() { var sellers = Generator.GetNewSellers(20); Generator.GetNewProducts(1000); Generator.GetNewCustomers(100); cancelTokenSource = new CancellationTokenSource(); token = cancelTokenSource.Token; foreach (var seller in sellers) { Sellers.Enqueue(seller); //очередь касиров (чтобы брать свободных) } for (int i = 0; i < 3; i++) { CashDesks.Add(new CashDesk(CashDesks.Count, Sellers.Dequeue(), null)); //создаем кассы } }
private void frmCashdesksEdit_Load(object sender, EventArgs e) { if (_CashId == null) { cd = _db.CashDesks.Add(new CashDesks { Deleted = 0, Def = _db.CashDesks.Any(a => a.Def == 1) ? 0 : 1, Name = "" }); Text = "Додати нову касу:"; } else { cd = _db.CashDesks.Find(_CashId); Text = "Властвості каси:"; } CashDesksBS.DataSource = cd; DefCheckBox.Enabled = !DefCheckBox.Checked; }