RCU là viết tắt của "đọc, sao chép, cập nhật". Nó là một thuật toán cho phép nhiều người đọc truy cập dữ liệu có thể được cập nhật hoặc thậm chí bị xóa cùng lúc bởi các nhà văn.
Theo RCU, các nhà văn vẫn phải đảm bảo loại trừ lẫn nhau liên quan đến nhau, nhưng độc giả không có khóa. Cần lưu ý rằng cấu trúc dữ liệu được chia sẻ được cập nhật theo những cách không vi phạm tính toàn vẹn của đọc. Nếu một cái gì đó phải được loại bỏ hoặc xóa, việc hủy liên kết của mục đó khỏi cấu trúc dữ liệu có thể được thực hiện song song với người đọc nhưng việc xóa thực tế bộ nhớ phải chờ cho đến khi người đọc cuối cùng kết thúc.
Thay vì làm cho người đọc có được khóa, nơi ở của người đọc được phỏng đoán theo những cách khác. Chủ đề có thể thông báo ý định của họ để duyệt cấu trúc dữ liệu bằng cách tham gia một "phần bên đọc quan trọng" mà không thực sự là một khóa nhưng là một loại giai đoạn toàn cầu. Ví dụ, giả sử rằng một số luồng đã nhập phần quan trọng bên đọc RCU trong pha 0. Trình cập nhật đã thực hiện xóa và muốn giải phóng một phần bộ nhớ. Nó chỉ đơn giản là đợi tất cả các luồng trong hệ thống rời khỏi giai đoạn 0. Trong khi đó, các độc giả khác đang xem cấu trúc dữ liệu, nhưng khi họ tuyên bố ý định của họ với RCU, họ làm như vậy bằng cách nhập vào RCU phần dưới giai đoạn 1. Chỉ có các chủ đề pha 0 có thể vẫn có một con trỏ tới đối tượng đã bị xóa, và vì vậy khi luồng cuối cùng rời khỏi pha 0, đối tượng có thể xóa một cách an toàn. Chủ đề mới đến trong giai đoạn 1 không thấy đối tượng, bởi vì đối tượng đã bị xóa khỏi cấu trúc dữ liệu, vì vậy họ không có cách nào để tìm thấy nó.
RCU tận dụng ý tưởng rằng chúng tôi không cần các đối tượng khóa được "sở hữu" để biết thông tin như "không có chuỗi nào có thể truy cập được đối tượng này nữa".