summaryrefslogtreecommitdiff
path: root/std/thread.zc
diff options
context:
space:
mode:
authorZuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian>2026-01-29 13:17:30 +0000
committerZuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian>2026-01-29 13:17:30 +0000
commitfc6ff10acb9d00ea1c8c5924869e0efbd38093c5 (patch)
treea4cb5d9d9d0ea2702de42df1e3c2fbe40185e293 /std/thread.zc
parentda9e8758e9d89dc7362be67f8e7573309efe170c (diff)
Objective-C interop + a few improvements
Diffstat (limited to 'std/thread.zc')
-rw-r--r--std/thread.zc9
1 files changed, 8 insertions, 1 deletions
diff --git a/std/thread.zc b/std/thread.zc
index e90943b..98f080e 100644
--- a/std/thread.zc
+++ b/std/thread.zc
@@ -5,6 +5,7 @@ include <unistd.h>
import "./core.zc"
import "./result.zc"
+import "./mem.zc"
raw {
typedef void (*ZenThreadFunc)(void*);
@@ -120,11 +121,17 @@ impl Mutex {
if (self.handle) {
_z_mutex_destroy(self.handle);
free(self.handle);
+ self.handle = NULL;
}
}
}
+impl Drop for Mutex {
+ fn drop(self) {
+ self.free();
+ }
+}
+
fn sleep_ms(ms: int) {
_z_usleep(ms * 1000);
}
-