From 50a2493fd38068cb1030860795f2612a98a9b482 Mon Sep 17 00:00:00 2001 From: Colin Davidson Date: Thu, 5 Jan 2023 01:48:00 -0800 Subject: [PATCH] add get thread count to openbsd --- core/os/os_openbsd.odin | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/core/os/os_openbsd.odin b/core/os/os_openbsd.odin index 0375107ca..139d257a5 100644 --- a/core/os/os_openbsd.odin +++ b/core/os/os_openbsd.odin @@ -269,6 +269,7 @@ foreign libc { @(link_name="mkdir") _unix_mkdir :: proc(path: cstring, mode: mode_t) -> c.int --- @(link_name="getpagesize") _unix_getpagesize :: proc() -> c.int --- + @(link_name="sysconf") _sysconf :: proc(name: c.int) -> c.long --- @(link_name="fdopendir") _unix_fdopendir :: proc(fd: Handle) -> Dir --- @(link_name="closedir") _unix_closedir :: proc(dirp: Dir) -> c.int --- @(link_name="rewinddir") _unix_rewinddir :: proc(dirp: Dir) --- @@ -704,6 +705,11 @@ get_page_size :: proc() -> int { return page_size } +_SC_NPROCESSORS_ONLN :: 503 +get_processor_thread_count :: proc() -> int { + thread_count := int(_sysconf(_SC_NPROCESSORS_ONLN)) + return thread_count +} _alloc_command_line_arguments :: proc() -> []string { res := make([]string, len(runtime.args__)) @@ -711,4 +717,4 @@ _alloc_command_line_arguments :: proc() -> []string { res[i] = string(arg) } return res -} \ No newline at end of file +}