6 #include "libthreads.h"
8 #define THREAD_ID_T_NONE -1
10 typedef enum thread_state {
19 void * operator new(size_t size);
20 void operator delete(void *ptr);
21 Thread(thrd_t *t, void (*func)(), void *a);
26 static int swap(ucontext_t *ctxt, Thread *t);
27 static int swap(Thread *t, ucontext_t *ctxt);
29 thread_state get_state() { return state; }
30 void set_state(thread_state s) { state = s; }
32 thrd_t get_thrd_t() { return *user_thread; }
36 void (*start_routine)();
45 Thread * thread_current();
47 static inline thread_id_t thrd_to_id(thrd_t t)
52 #endif /* __THREADS_H__ */