Definition: 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.
Also known as functional data structure.
See also passive data structure.
Note: 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 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.
If you have suggestions, corrections, or comments, please get in touch with Paul Black.
Entry modified 31 March 2006.
HTML page formatted Tue Jan 16 10:34:44 2018.
Cite this as:
Paul E. Black, "active data structure", in Dictionary of Algorithms and Data Structures [online], Vreda Pieterse and Paul E. Black, eds. 31 March 2006. (accessed TODAY) Available from: https://www.nist.gov/dads/HTML/activeDataStruc.html