บัฟเฟอร์เป็นวงกลม คืออาร์เรย์ขนาดคงที่ที่ถูกมองว่าปลายทั้งสองของมันเชื่อมต่อเป็นวงแหวน ดัชนีสองตัว — 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)
