mirror of
https://github.com/bpmbpm/doc.git
synced 2026-04-28 11:30:42 +00:00
937 B
937 B
algorithm
synchronized
- конкурентность. Три способа менять один объект из нескольких потоков. Больше нет
Что происходит, когда два потока одновременно хотят изменить один объект?
Не «как устроен mutex». Не «чем CAS лучше lock». А именно: что случится при конфликте?
Ответов ровно три:- Один победит, другой переделает работу (First Win + Retry)
- Один подождёт, пока другой закончит (Single Writer)
- Последний затрёт первого (Last Win)
CSP Хоара (как и указанные в статье Go channels) относится к Стратегии 2.2 (Очередь/Single Writer).