7 /****************************************************************************/
8 #if (defined _WIN32 && defined _MSC_VER && !defined WIN_KERNEL_BUILD)
10 /* TRD : any Windows (user-mode) on any CPU with the Microsoft C compiler
12 _WIN32 indicates 64-bit or 32-bit Windows
13 _MSC_VER indicates Microsoft C compiler
14 !WIN_KERNEL_BUILD indicates Windows user-mode
17 void abstraction_thread_wait( thread_state_t thread_state )
19 WaitForSingleObject( thread_state, INFINITE );
30 /****************************************************************************/
31 #if (defined _WIN32 && defined _MSC_VER && defined WIN_KERNEL_BUILD)
33 /* TRD : any Windows on any CPU with the Microsoft C compiler
35 _WIN32 indicates 64-bit or 32-bit Windows
36 _MSC_VER indicates Microsoft C compiler
37 WIN_KERNEL_BUILD indicates Windows kernel
40 void abstraction_thread_wait( thread_state_t thread_state )
42 KeWaitForSingleObject( thread_state, Executive, KernelMode, FALSE, NULL );
53 /****************************************************************************/
54 #if (defined __unix__)
56 /* TRD : any UNIX on any CPU with any compiler
58 I assumed pthreads is available on any UNIX.
60 __unix__ indicates Solaris, Linux, HPUX, etc
63 void abstraction_thread_wait( thread_state_t thread_state )
65 pthread_join( thread_state, NULL );