Cuprins:
Definiție - Ce înseamnă Ring Buffer?
Un buffer inelar este o structură de date care este tratată ca circulară, deși implementarea sa este liniară. Un buffer circular este de obicei utilizat ca coadă de date. Un tampon circular este o modalitate populară de a implementa un flux de date, deoarece codul poate fi compact.
Un tampon inelar este cunoscut și sub numele de buffer circular, coadă circulară sau tampon ciclic.
Techopedia explică Ring Buffer
Un tampon inel este o implementare comună a unei cozi. Este popular deoarece cozile circulare sunt ușor de implementat. În timp ce un tampon de inel este reprezentat ca un cerc, în codul de bază, un tampon de inel este liniar. Un tampon de inel există ca un tablou cu lungime fixă cu doi indicatori: unul care reprezintă capul unei cozi și altul care reprezintă coada. Într-o coadă, elementele sunt adăugate la coada cozii într-o modă „FIFO” (primul în-primă ieșire). Primele elemente ale cozii sunt eliminate din cap în ordinea în care au fost adăugate. Când indicatorul de cap ajunge la sfârșitul tabloului, acesta se înfășoară la primul element din tablă. Orice date din buffer sunt suprascrise. Capul cozii este diferit de primul element din tabloul real și ambii indicatori se mișcă pe măsură ce elementele sunt adăugate și eliminate.
Un dezavantaj al unui tampon de inel este dimensiunea sa fixă. Pentru cozile în care trebuie adăugate și eliminate elemente la mijloc, nu doar la începutul și la sfârșitul unui tampon, implementarea ca listă legată este abordarea preferată.