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

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

 

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

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

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

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

 

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

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


Содержание сайта (выборка)
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, справочник программиста