Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Example in 4.2 seems misleading #1640

Open
j-n-f opened this issue Feb 5, 2025 · 0 comments
Open

Example in 4.2 seems misleading #1640

j-n-f opened this issue Feb 5, 2025 · 0 comments

Comments

@j-n-f
Copy link

j-n-f commented Feb 5, 2025

Data buffers: Circular linked lists are also used in data buffers, like in audio and video players, where the data stream is divided into multiple buffer blocks arranged in a circular fashion for seamless playback.

Are there any real-world examples of this? I've seen audio software that will use multiple buffers (similar to double buffering in graphics), but these are fixed, contiguous allocations and not linked lists. They don't use next pointers, they simply maintain an index to know which segment of an array should be read for the next block of data.

It seems like an analogy to ringbuffers is being made, but ringbuffers are relevant when you have a fixed allocation (i.e. real-time software) that needs to support a continuous stream without being able to make new allocations. What the text describes sounds more like a FIFO, and I'm not sure what benefit the circularity is adding.

This example is contrived, and I think it would mislead people as to how media software really is implemented. The text would be fine without it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant