| # Threading Model |
| |
| The [graph](graph.h) can only be accessed from a single sequence. |
| |
| Nodes can be created on any sequence, but as soon as they're added to a graph, |
| they can only be used on the graph's sequence, with the exception of the id |
| accessor. |
| |
| # Node Lifetime |
| |
| With the exception of the system node, which is a singleton, the GraphImpl does |
| not own nodes. The user of the graph is responsible for maintaining node |
| ownership. Any node that has been added to the graph, must be removed from the |
| graph with GraphImpl::RemoveNode before it's deleted. All nodes must be removed |
| from the graph before the graph is destroyed. |