This module implements the Isolated[T] type for safe construction of isolated subgraphs that can be passed efficiently to different channels and threads.
Warning:
This module is experimental and its interface may change.
Procs
proc `=destroy`[T](dest: var Isolated[T]) {.inline.}
- Source Edit
func extract[T](src: var Isolated[T]): T
- Returns the internal value of src. The value is moved from src. Source Edit
func isolate[T](value: sink T): Isolated[T] {.magic: "Isolate", ...raises: [], tags: [].}
-
Creates an isolated subgraph from the expression value. Isolation is checked at compile time.
Please read https://github.com/nim-lang/RFCs/issues/244 for more details.
Source Edit func unsafeIsolate[T](value: sink T): Isolated[T]
-
Creates an isolated subgraph from the expression value.Warning: The proc doesn't check whether value is isolated.Source Edit