Нарисуйте временную диаграмму
Допустим, что мы реализуем
test-and-set!
в виде обыкновенной процедуры, как показано в тексте, не пытаясь сделать ее атомарной. Нарисуйте временную диаграмму, подобную диаграмме на рис. 3.29, и покажите, как реализация мьютекса может ошибиться и позволить двум процессам одновременно захватить мьютекс.

Рис. 3.29. Временная диаграмма, показывающая, как чередование действий при двух операциях со счетом может привести к неправильному балансу.
Комментарии отсутствуют.