тупик
Тупик - это ситуация, в которой два или более конкурирующих действия ждут другого, и, таким образом, никогда не будет. В транзакционной базе данных происходит взаимоблокировка, когда два процесса в рамках собственной транзакции обновляют две строки информации, но в обратном порядке. Например, процесс A обновляет строку 1, а затем строку 2 в точном временном периоде. B обновляет строку 2, затем строку 1. Процесс A не может завершить обновление строки 2 до завершения процесса B, но он не может завершить обновление строки 1 до тех пор, пока процесс A не завершится , Независимо от того, сколько времени разрешено проходить, эта ситуация никогда не решит себя, и из-за этих систем управления базами данных, как правило, будет убивать транзакцию процесса, который сделал наименьший объем работы. В операционной системе тупик - это ситуация, когда процесс или поток входят в состояние ожидания, потому что запрашиваемый ресурс удерживается другим процессом ожидания, который, в свою очередь, ждет другого ресурса. Если процесс не может изменить свое состояние на неопределенное время, потому что запрашиваемые им ресурсы используются другим процессом ожидания, то система, как говорят, находится в тупике.