diff options
| author | Marcos Magueta <maguetamarcos@gmail.com> | 2026-09-27 15:00:27 -0300 |
|---|---|---|
| committer | Marcos Magueta <maguetamarcos@gmail.com> | 2026-09-27 15:00:27 -0300 |
| commit | 5370c5f1ce62cc9add4f3f6523bdd1f2b897cfa0 (patch) | |
| tree | 9a5aeda3c53c3256a60c1b91320af0d8450d1bdc /lib/kernel/Lifecycle.ml | |
| parent | f91e63c3bbe9f23ec11ab9c21e58edb6e61c94f9 (diff) | |
| download | RNT-5370c5f1ce62cc9add4f3f6523bdd1f2b897cfa0.tar.gz RNT-5370c5f1ce62cc9add4f3f6523bdd1f2b897cfa0.zip | |
session exclusive lifetime
Diffstat (limited to 'lib/kernel/Lifecycle.ml')
| -rw-r--r-- | lib/kernel/Lifecycle.ml | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/kernel/Lifecycle.ml b/lib/kernel/Lifecycle.ml index bf0b544..ac6bb20 100644 --- a/lib/kernel/Lifecycle.ml +++ b/lib/kernel/Lifecycle.ml @@ -14,6 +14,13 @@ class null = method release = () end +class exclusive = + object + val taken = Atomic.make false + method reference = Atomic.compare_and_set taken false true + method release = Atomic.set taken false + end + class virtual counted = object (self) val references = Atomic.make 1 |
