Tcl Source Code

Global Values
Login

Source Files

Public Interface

Private Interface

Directly Depends On Public Interface

Directly Depends On Private Interface of

Discussion

A system for managing Tcl values that must be shared by the entire process, including all threads, but using caching so that thread locking is avoided when possible. Is able to withstand changing values of the system encoding. Best for things written once or few times and then read many times, and for things that have to be first recorded with one system encoding active, then read with a different one in place. Implemented entirely using public interfaces, so extensions could copy or even be the provider of this.

It appears that the implementation lacks the memory fences required to make it robustly portably correct. It makes unwarranted assumption about what an epoch value can reliably tell you about the controlled values in a multi-core setting.