Active data structure

From Wikipedia, the free encyclopedia

A data structure with an associated thread or process that performs internal operations to give the external behavior of another, usually more general, data structure.

For example, a queue is usually considered to be unbounded. However, actual queues provided by the hardware or operating system may be significantly limited. Changing the writing and reading processes to use a bounded queue makes those applications more complicated. However, an active queue can accept input from the writer through a system queue, and save items in memory or on disk if the other system queue for the reader is full. When the reader's queue has space, items can be retrieved and put back in the queue. Although there are now three components, rather than just the writer and reader, the high level abstraction is very simple and clear.

[edit] See also

  • passive data structure

Paul E. Black, Active Data Structure at the NIST Dictionary of Algorithms and Data Structures.