-struct thread {
- void (*start_routine);
- void *arg;
- ucontext_t context;
- void *stack;
- int index;
- int completed;
-};
-
-int thread_create(struct thread *t, void (*start_routine), void *arg);
-void thread_join(struct thread *t);
-struct thread *thread_current(void);
+ int thrd_create(thrd_t *t, thrd_start_t start_routine, void *arg);
+ int thrd_join(thrd_t);
+ int thrd_yield(void);
+ thrd_t thrd_current(void);
+
+ int user_main(int, char**);
+
+#ifdef __cplusplus
+}
+#endif