Uno/Term/Thread Safe

Code is thread-safe, if it can safely be called concurrently by multiple threads. This typically means, that it protects critical sections by locks. Thread-safe code is thread-aware. Wikipedia has a more in-deep article about thread safety.

In Uno, components need to be declared thread-safe, if doing blocking I/O, so that the components system calls can be interrupted. Thread-safe components may also be used to allow high concurrency, while avoiding the runtime overhead of external locking.