на начало
На главную страницу
Форум   

Блокировки (Locks)

страницы в данном разделе 
» Урок 12 » Некоторые сведения об архитектуре Windows
» Windows 2000 — многозадачная операционная система » Уровни и платформы
» Однозадачные операционные системы » Многозадачные операционные системы
» Процессы и потоки » Приоритеты процессов
» Приоритеты потоков » Переключение потоков
» Архитектура памяти Win32 » Разделы адресного пространства
» Подсистемы ОС » Взаимодействие подсистем
» Разделяемые ресурсы » Стратегии решения проблемы
» Транзакции » Тупиковая ситуация (Deadlock)
» Механизмы синхронизации » Критические секции
» COMPEBOOK.RU - Компьютерные электронные книги, электронные учебники » События
» Семафоры » Блокировки (Locks)
» Специальные блокировки » Устранение тупиковых ситуаций

Статья :: Блокировки (Locks)

Блокировки (Locks)

 

Блокировки (Locks)

Блокировки — это семафоры, которые приспособлены для двух операций транзакции (commit и abort). Они используются для обеспечения последовательного доступа конкурирующих потоков или процессов к критическим секциям. Обычно в базах данных блокируется некоторое множество данных (range of items), так как блокировка одного элемента более накладна. Представьте такой запрос:

Select * from Customer where country = Russia and city = "Moscow";

Чтобы защитить данные от рассмотренных выше неприятностей, надо заблокировать все строки таблицы, которые удовлетворяют указанному критерию поиска. Такой способ защиты, оказывается, обладает побочным эффектом. Он может породить запись-призрак (phantom). Допустим, что в это же время другой поток процесса добавляет в ту же таблицу Customer (Клиент) новую запись и ее поля удовлетворяют тому же критерию (клиент из Мосвы). Она, конечно же, будет добавлена в таблицу, но для первого потока она является фантомом (не существует).

 


Содержание сайта (выборка)
Apache
Протоколы TCP/IP (принципы, протоколы и архитектура)



PHP, PELR, JSP
PHP
JavaServer Pages (JSP)

Базы данных
Основы mysql
СУБД INFORMIX
СУБД POSTGRES
Основы проектирования реляционных баз данных

HTML, javascript
Спецификация HTML 4.01
Каскадные Таблицы Стилей, Уровень 2
Клиентский JavaScript. Справочник.
JavaScript руководство пользователя
Серверный JavaScript 1.4. Руководство по Использованию.

Паскаль, C, C++, C#
GCC (примеры)
FAQ Валентинa Озеровa DELPHI
C





 
© faq.pp.ru, справочник программиста
Яндекс цитирования