О проекте | Помощь    
   
 
   Энциклопедия Компьютеры Финансы Психология Право Философия   
Культура Медицина Педагогика Физика Спорт Спорт
 
А Б В Г Д Е Ж З И Й К Л М Н О П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я
 
Та Тб Тв Тг Тд Те Тж Тз Ти Тй Тк Тл Тм Тн То Тп Тр Тс Тт Ту Тф Тх Тц Тч Тш Тщ Тъ Ты Ть Тэ Тю Тя
 

ТУПИКОВАЯ СИТУАЦИЯ

ТУПИКОВАЯ СИТУАЦИЯ, взаимная блокировка, тупик (deadlock). Ситуация, возникающая при параллельной обработке, когда несколько процессов, использующие общие ресурсы, не позволяют друг другу продолжать работу. Например, пусть есть два процесса, А и Б, которым требуются ресурсы X и Y. Пусть процесс А сначала запрашивает ресурс X и захватывает его, а процесс Б параллельно захватывает ресурс Y, который в это время еще свободен. В результате возникает ситуация, когда ни один из двух процессов не может продолжать работу: процесс А ждет, когда процесс Б закончит свою работу и освободит ресурс Y, а процесс Б ждет, когда процесс А закончит свою работу и освободит ресурс X. Т. с. может возникнуть при работе операционной системы, системы управления базой данных и др. Известны различные методы предотвращения Т. с. и выхода из Т. с. Например, если СУБД обнаруживает, что возникла Т. с. при работе двух транзакций из-за взаимной блокировки записей, то СУБД выбирает одну из транзакций и производит ее откат, в результате чего записи освобождаются и вторая транзакция завершает свою работу. После этого СУБД повторно запускает первую транзакцию