diff options
Diffstat (limited to 'Include/thread.h')
-rw-r--r-- | Include/thread.h | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/Include/thread.h b/Include/thread.h index fb2ff48..e29f7e6 100644 --- a/Include/thread.h +++ b/Include/thread.h @@ -1,19 +1,24 @@ #ifndef _THREAD_H_included #define _THREAD_H_included -#ifdef __STDC__ +#if defined(__STDC__) || defined(__cplusplus) #define _P(args) args #else #define _P(args) () #endif +typedef void *type_lock; +typedef void *type_sema; + +#ifdef __cplusplus +extern "C" { +#endif + void init_thread _P((void)); int start_new_thread _P((void (*)(void *), void *)); void exit_thread _P((void)); void _exit_thread _P((void)); -typedef void *type_lock; - type_lock allocate_lock _P((void)); void free_lock _P((type_lock)); int acquire_lock _P((type_lock, int)); @@ -21,8 +26,6 @@ int acquire_lock _P((type_lock, int)); #define NOWAIT_LOCK 0 void release_lock _P((type_lock)); -typedef void *type_sema; - type_sema allocate_sema _P((int)); void free_sema _P((type_sema)); void down_sema _P((type_sema)); @@ -31,6 +34,10 @@ void up_sema _P((type_sema)); void exit_prog _P((int)); void _exit_prog _P((int)); +#ifdef __cplusplus +} +#endif + #undef _P #endif |