Проблема обедающих философов – необходимо разъяснение
-
21-08-2019 - |
Вопрос
Недавно я прочитал эта статья в Википедии Что касается проблемы «Обедающие философы», но мне неясно решение Чанди / Мисры.
Согласно статье: «Когда философ с вилкой получает сообщение о запросе, он сохраняет вилку, если она чистая, но дает ее, когда она грязная». В контексте этого вопроса он передает его, если он ест, и сохраняет его, если он еще не начал есть.
По сценарию, Что означает Грязный?Тема запущена или пропала?
Решение
Грязный означает, что обработка началась и ее можно прервать.
И обрабатывать можно только в том случае, если у вас есть две вилки.
Другие советы
Грязный, похоже, означает «простой» или «был доступен», а чистый означает «пришлось запросить» или «вытеснить».
В нем говорится, что вилка является «грязной», если он ее взял (за вилку не было борьбы, когда он этого хотел), и «чистой», если ему пришлось ее запросить, и что ее исходное состояние является грязным.
Возьмите имеющуюся вилку => вилка грязная => очистите ее и отдайте, когда вас попросят.
Нет доступной вилки => придется попросить ее => она будет очищена.
Это напоминает мне Организационную Модель под названием Не прерывайте прерывание.