Объявление

Ищу партнеров в бизнес (не связано с интуитом)
Подробнее тут.

В маленьком ресторанчике, где готовят пиццу, работают отец и три его дочери. Приготовление пиццы требует трех ингредиентов: теста, соуса и сыра. Одна дочь должна непрерывно поставлять тесто, вторая - соус, третья - тертый сыр. Приготовление пиццы происход

В маленьком ресторанчике, где готовят пиццу, работают отец и три его дочери. Приготовление пиццы требует трех ингредиентов: теста, соуса и сыра. Одна дочь должна непрерывно поставлять тесто, вторая - соус, третья - тертый сыр. Приготовление пиццы происходит следующим образом: первая дочь формирует из теста основу пиццы, после чего вторая дочь намазывает лепешку соусом, а третья - посыпает сыром. Отец берет подготовленную дочерьми пиццу и помещает ее в печь. Используя классические мониторы Хора, программист предложил следующую модель приготовления пиццы с помощью четырех процессов: для отца и для каждой из дочерей.
monitor make_pizza {
condition c[3];
make_item(int i){
if(i != 0 )c[i-1].wait;
<выполнить свою работу>
if(i != 3)c[i].signal;
else <выставить на продажу>
}
}
Процесс i-й работник i = 0,1,2,3; i=3 — соответствует отцу
While (1) {
make_pizza.make_item(i);
}



Что может произойти в результате такого моделирования?
посетитель может не дождаться пиццы из-за возникновения тупиковой ситуации
посетитель может получить пиццу без какого-либо ингредиента
будут накапливаться забытые недоделанные пиццы
ничего особенного не произойдет, модель будет работать нормально

Не нашли ответ на свой вопрос? Задайте его на нашем форуме.