summaryrefslogtreecommitdiff
path: root/docs/application/shared.md
diff options
context:
space:
mode:
authornodist <kevin.comas.git@gmail.com>2026-07-27 17:17:56 -0400
committernodist <kevin.comas.git@gmail.com>2026-07-27 17:17:56 -0400
commitbb912b081ed339e4a5419bd3d2ffd7465f2f72d3 (patch)
tree7f34b3af1a72672de1d12c8e23dda419c398dce3 /docs/application/shared.md
parent003119b9f285e5610f56186bce845441409265ae (diff)
bottom up redesign
Diffstat (limited to 'docs/application/shared.md')
-rw-r--r--docs/application/shared.md38
1 files changed, 0 insertions, 38 deletions
diff --git a/docs/application/shared.md b/docs/application/shared.md
deleted file mode 100644
index 0528645..0000000
--- a/docs/application/shared.md
+++ /dev/null
@@ -1,38 +0,0 @@
-# Shared
-
----
-
-## Object Definitions
-
-```c
-typedef struct _kpl_shared {
- bool mark;
- kpl_class data;
- kpl_mutex mutex;
-} kpl_shared;
-
-_Atomic uint32_t shared_threads_makred;
-
-static kpl_shared *shared_mark_head, *shared_head;
-
-static kpl_mutex shared_head_mutex;
-```
-
-# Garbage Collection
-
-## Initiation Task
-
-1. Move `shared_head` to `shared_mark_head`
-2. Set `shared_threads_makred` to 0
-3. Add a mark task to each of the threads
-
-## Mark Task(s)
-
-1. Run gc interface on each task in the threads queue
-2. Increase `shared_threads_makred`
-3. If `shared_threads_makred` is equal to `avaiable_threads` schedule sweep task
-
-## Sweep Task
-
-1. Go through `shared_mark_head` freeing anything that is not marked
-2. Add anything left on `shared_mark_head` to `shared_head`