Kohi Game Engine
kthread.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "defines.h"
4 
10 typedef struct kthread {
14 
15 // A function pointer to be invoked when the thread starts.
16 typedef u32 (*pfn_thread_start)(void *);
17 
26 KAPI b8 kthread_create(pfn_thread_start start_function_ptr, void *params, b8 auto_detach, kthread *out_thread);
27 
32 
36 KAPI void kthread_detach(kthread *thread);
37 
41 KAPI void kthread_cancel(kthread *thread);
42 
48 
53 KAPI void kthread_sleep(kthread *thread, u64 ms);
54 
This file contains global type definitions which are used throughout the entire engine and applicatio...
#define KAPI
Import/export qualifier.
Definition: defines.h:177
unsigned int u32
Unsigned 32-bit integer.
Definition: defines.h:25
_Bool b8
8-bit boolean type
Definition: defines.h:58
unsigned long long u64
Unsigned 64-bit integer.
Definition: defines.h:28
KAPI void kthread_destroy(kthread *thread)
KAPI void kthread_sleep(kthread *thread, u64 ms)
u32(* pfn_thread_start)(void *)
Definition: kthread.h:16
KAPI void kthread_detach(kthread *thread)
KAPI b8 kthread_create(pfn_thread_start start_function_ptr, void *params, b8 auto_detach, kthread *out_thread)
KAPI b8 kthread_is_active(kthread *thread)
struct kthread kthread
KAPI void kthread_cancel(kthread *thread)
KAPI u64 platform_current_thread_id(void)
Obtains the identifier for the current thread.
Definition: kthread.h:10
u64 thread_id
Definition: kthread.h:12
void * internal_data
Definition: kthread.h:11