Read-copy-update (RCU) — один із механізмів синхронізації в інформатиці, що забезпечує ексклюзивний доступ до спільного ресурсу; застосовується для розв'язання задачі читачів та записувачів.

Перевагами RCU над read–write lock є: малі накладні витрати на блокування, бо немає ексклюзивного блокування, оскільки операція запису є атомарною; операції читання виконуються без затримки ().

Недоліками є: додаткові ресурси пам'яті та часу на створення копії даних при кожному записі.

Алгоритм : rcu_read_lock() — встановлює спільний блок на поточну версію даних, блокуючи її від видалення; rcu_read_unlock() — знімає блок з версії даних; rcu_assign_pointer() — атомарна операція оновлення вказівника на дані, щоб він показував на новосторену версію. synchronize_rcu() — очікує зняття всіх блоків з даної версії даних і видаляє її.

Див. також Read-modify-write Задача читачів та записувачів

Посилання Paul E. McKenney, Mathieu Desnoyers, and Lai Jiangshan: User-space RCU. Linux Weekly News. Paul E. McKenney and Jonathan Walpole: What is RCU, Fundamentally?, What is RCU? Part 2: Usage, and RCU part 3: the RCU API. Linux Weekly News. Paul E. McKenney's RCU web page Hart, McKenney, and Demke Brown (2006). Making Lockless Synchronization Fast: Performance Implications of Memory Reclamation An IPDPS 2006 Best Paper comparing RCU's performance to that of other lockless synchronization mechanisms. Journal version (including Walpole as author). (1995) "Apparatus and method for achieving reduced overhead mutual exclusion and maintaining coherency in a multiprocessor system utilizing execution history and thread monitoring" Paul McKenney: Sleepable RCU. Linux Weekly News.