mirror of
https://github.com/bpmbpm/doc.git
synced 2026-04-28 11:30:42 +00:00
9 lines
784 B
Markdown
9 lines
784 B
Markdown
### algorithm
|
||
#### synchronized
|
||
- конкурентность. [Три способа менять один объект из нескольких потоков. Больше нет](https://habr.com/ru/articles/974198/)
|
||
Что происходит, когда два потока одновременно хотят изменить один объект?
|
||
Не «как устроен mutex». Не «чем CAS лучше lock». А именно: что случится при конфликте?
|
||
Ответов ровно три:
|
||
- Один победит, другой переделает работу (First Win + Retry)
|
||
- Один подождёт, пока другой закончит (Single Writer)
|
||
- Последний затрёт первого (Last Win)
|