Продолжать обслуживание текуще

Автор admin Вторник, 9 июня 2009 11:32

Продолжать обслуживание текущего клиента return; } if(servtime < ttime) { ttime -= servtime: if(!customers.emptyО) { current = customers.front(); customers.pop(): // Удаление из очереди busy = true; run(true); // Рекурсия } return; } if(servtime == ttime) { // Клиент обслужен: current = Customer(O): busy = false; return; // Завершение текущего кванта } } Очередь 381 for (Tell It i = tell ers. beginO: i != tellers.endO: i++) (*i).run(); cout « '{' « tellers.sizeO « '}' « customers « endl: // Если очередь слишком длинна, создаем нового кассира: if (customers. sizeO / tellers. sizeO > 2) tel1ers.push_back(Tel 1er(customers)): // Если очередь слишком коротка, убираем кассира: if(tellers.sizeO > 1 && customers.sizeO / tellers.sizeO < 2) forCTelllt i = tellers.beginO: i != tellers.endO: i++) if(!(*i).isBusy()) { tell ers. erased): break: // Выход из цикла } } } ///:- Каждому клиенту назначается определенное время обслуживания — количество квантов времени, которое должно быть потрачено кассиром на данного клиента. Время обслуживания определяется для каждого клиента случайным образом. Также мы не знаем, скольк


Комментарии закрыты.