This is a simple type-safe wrapper around the CreateThread API function. You encapsulate the
thread’s state with an object. The only requirement is that the object has a member function named start
that takes no arguments.
Here is an example:
cruncher1* testers[thread_count];
// … populate array by newing crunchers
ratwin::types::Kernel_HANDLE handles[thread_count];
for (loop= 0; loop < thread_count; loop++) {
handles[loop]= classics::launch_thread (*testers[loop]);
}
ratwin::tasking::WaitForMultipleObjects (thread_count, handles, true);