aboutsummaryrefslogtreecommitdiff
path: root/builtins/thread.h
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2024-08-11 14:47:34 -0400
committerBruce Hill <bruce@bruce-hill.com>2024-08-11 14:47:34 -0400
commit2ecb5fe885042ca6c25ee0a3e3da070ddec9e07e (patch)
treecdd7c7d1d51982d4074f76a1bccc522fbc8b5eee /builtins/thread.h
parent3bf8ea8e12a2728bf63968ca7b42359b089e318b (diff)
Add channels and threads
Diffstat (limited to 'builtins/thread.h')
-rw-r--r--builtins/thread.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/builtins/thread.h b/builtins/thread.h
new file mode 100644
index 00000000..efccae33
--- /dev/null
+++ b/builtins/thread.h
@@ -0,0 +1,21 @@
+#pragma once
+
+// Logic for the Thread type, representing a pthread
+
+#include <pthread.h>
+#include <stdbool.h>
+#include <gc/cord.h>
+
+#include "datatypes.h"
+#include "types.h"
+#include "util.h"
+
+pthread_t *Thread$new(closure_t fn);
+void Thread$cancel(pthread_t *thread);
+void Thread$join(pthread_t *thread);
+void Thread$detach(pthread_t *thread);
+CORD Thread$as_text(const pthread_t **thread, bool colorize, const TypeInfo *type);
+
+extern TypeInfo Thread;
+
+// vim: ts=4 sw=0 et cino=L2,l1,(0,W4,m1,\:0