Проблема обедающих философов – необходимо разъяснение

StackOverflow https://stackoverflow.com/questions/861367

Вопрос

Недавно я прочитал эта статья в Википедии Что касается проблемы «Обедающие философы», но мне неясно решение Чанди / Мисры.

Согласно статье: «Когда философ с вилкой получает сообщение о запросе, он сохраняет вилку, если она чистая, но дает ее, когда она грязная». В контексте этого вопроса он передает его, если он ест, и сохраняет его, если он еще не начал есть.

По сценарию, Что означает Грязный?Тема запущена или пропала?

Это было полезно?

Решение

Грязный означает, что обработка началась и ее можно прервать.

И обрабатывать можно только в том случае, если у вас есть две вилки.

Другие советы

Грязный, похоже, означает «простой» или «был доступен», а чистый означает «пришлось запросить» или «вытеснить».

В нем говорится, что вилка является «грязной», если он ее взял (за вилку не было борьбы, когда он этого хотел), и «чистой», если ему пришлось ее запросить, и что ее исходное состояние является грязным.

  • Возьмите имеющуюся вилку => вилка грязная => очистите ее и отдайте, когда вас попросят.

  • Нет доступной вилки => придется попросить ее => она будет очищена.

Это напоминает мне Организационную Модель под названием Не прерывайте прерывание.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top