digital-garden/_inbox/Two Phase Lock.md

32 lines
1.1 KiB
Markdown
Raw Normal View History

2024-06-20 19:17:43 +03:00
---
aliases:
- 2-phase lock
tags:
- зрелость/🌱
date:
- - 2024-06-20
zero-link:
- "[[00 Архитектура ПО]]"
parents:
- "[[Блокировки]]"
linked:
---
2024-06-20 19:37:42 +03:00
Блокировка на запись в том числе блокирует на чтение.
Первая фаза: установка блокировки
2024-06-20 19:42:42 +03:00
Вторая фаза: снятие
Хотим изменить данные:
- ставим блокировку на запись
- ждем, пока все блокировки, которые были установлены до нашей, будут сняты
- меняем запись
- снимаем блокировку
Хотим прочитать строчку:
- Ставим блокировку на чтение
- Ждем пока все блокировки ==на запись==, которые были установлены до нашей, будут сняты.
- Считываем запись
- Снимаем блокировку
## Дополнительные материалы
- [Two-phase locking - Wikipedia](https://en.wikipedia.org/wiki/Two-phase_locking)