2022-12-29 14:46:59 -06:00
|
|
|
#include "storm/thread/S_Thread.hpp"
|
2022-12-29 14:56:12 -06:00
|
|
|
#include "storm/Memory.hpp"
|
2022-12-29 14:46:59 -06:00
|
|
|
|
2024-11-14 21:59:05 -08:00
|
|
|
#ifndef WINAPI
|
|
|
|
|
#define WINAPI
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
DWORD WINAPI S_Thread::s_SLaunchThread(void* threadParam) {
|
2022-12-29 14:56:12 -06:00
|
|
|
auto params = static_cast<SThreadParmBlock*>(threadParam);
|
|
|
|
|
auto proc = params->threadProc;
|
|
|
|
|
auto param = params->threadParam;
|
|
|
|
|
|
|
|
|
|
SMemFree(threadParam);
|
|
|
|
|
|
|
|
|
|
auto val = proc(param);
|
|
|
|
|
|
|
|
|
|
// TODO
|
|
|
|
|
// S_Thread::s_threadCrit.Enter();
|
|
|
|
|
|
|
|
|
|
// TODO
|
|
|
|
|
// - remove tracking in S_Thread::s_threads
|
|
|
|
|
// - decrement num threads
|
|
|
|
|
|
2022-12-29 14:46:59 -06:00
|
|
|
// TODO
|
2022-12-29 14:56:12 -06:00
|
|
|
// S_Thread::s_threadCrit.Leave();
|
|
|
|
|
|
|
|
|
|
return val;
|
2022-12-29 14:46:59 -06:00
|
|
|
}
|