THREAD_COMPLETED
} thread_state;
+typedef int thread_id_t;
+
struct thread {
void (*start_routine)();
void *arg;
ucontext_t context;
void *stack;
- int id;
+ thread_id_t id;
thread_state state;
};
int thread_create(struct thread *t, void (*start_routine)(), void *arg);
-void thread_join(struct thread *t);
+int thread_join(struct thread *t);
int thread_yield(void);
struct thread *thread_current(void);