r6:Function:abstraction thread wait
Jump to navigation
Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Source Files
/test/src/abstraction_thread_wait.c /test/src/abstraction.h
Prototype
void abstraction_thread_wait( thread_state_t thread_state );
Parameters
thread_state_t *thread_state
- The address of a thread_state_t which has been initialised by abstration_thread_start.
Return Value
No return value.
Notes
This function provides the test program with a way to wait until a thread terminates.
Examples
Under Windows (32-bit and 64-bit), using the Microsoft C compiler, the function WaitForSingleObject is used to create threads and this function has following prototype;
DWORD WINAPI WaitForSingleObject( __in HANDLE hHandle, __in DWORD dwMilliseconds );
As such, the implementation of abstraction_thread_wait() on all Windows, for all CPUs, using the Microsoft C compiler, looks like this;
#if (defined _WIN32 && defined _MSC_VER) /* TRD : any Windows on any CPU with the Microsoft C compiler _WIN32 indicates 64-bit or 32-bit Windows _MSC_VER indicates Microsoft C compiler */ void abstraction_thread_wait( thread_state_t thread_state ) { WaitForSingleObject( thread_state, INFINITE ); return; } #endif