 |
List Manager
|
The Linked List Manager provides a general set of fast linked list services suitable for use in real-time systems. The Linked List Manager removes the tedium and potential for serious errors inherent in many applications in which list manipulation is implemented by each programmer in unique and varying ways.
The Linked List Manager resolves list manipulation races which frequently occur in real-time multitasking applications. It assures that no linkages will be corrupted because of races among tasks, Timer Procedures or Interrupt Service Procedures attempting to manipulate the same list.
The Linked List Manager supports doubly linked lists in which all objects on a list are linked in forward and backward directions. It also supports keyed lists in which the order of objects in the list is determined by an ordering key provided by the application.
Objects can be inserted at the head or tail of a list or before or after any object already on the list. The object, if any, at the head or tail of the list can be located or removed. Any object on the list can be removed. Walking a list is simplified with functions to locate the next and previous objects on the list.
|
Linked List Manager |
| Function |
Service |
| cjlmcreate |
Create an empty linked list |
| cjlmxxxxx |
Find the head / tail or the next / previous item on a list |
| cjlmxxxxx |
Insert or remove an item at the head / middle / tail of a list |
| cjlminsk |
Insert into a list ordered by a key |
| cjlmmerge |
Merge two doubly linked lists |
|
|