Ένα κυκλικό buffer είναι ένας πίνακας σταθερού μεγέθους που αντιμετωπίζεται σαν να συνδέονται τα άκρα του σε ένα δακτύλιο. Δύο δείκτες — head (ανάγνωση) και tail (εγγραφή) — προχωρούν και περιστρέφονται γύρω χρησιμοποιώντας αριθμητική modulo, δίνοντας μια ουρά FIFO O(1) χωρίς καμία κατανομή μετά τη δημιουργία.
Πώς λειτουργεί η περιτύλιξη
text
capacity 5, after writing A,B,C,D and reading A,B:
index: 0 1 2 3 4
[ . ][ . ][ C ][ D ][ . ]
head^ tail^ (tail wraps to 0 next write)
