feat(thread): implement SThread::Create for windows

This commit is contained in:
fallenoak 2022-12-28 20:03:31 -06:00 committed by GitHub
parent 4dbfb0b3be
commit db87a5d782
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
7 changed files with 41 additions and 6 deletions

View file

@ -3,8 +3,10 @@
int32_t SThread::Create(uint32_t (*threadProc)(void*), void* param, SThread& thread, char* threadName, uint32_t a5) {
#if defined(WHOA_SYSTEM_WIN)
// TODO implement
return 0;
uint32_t v8;
auto handle = SCreateThread(threadProc, param, &v8, nullptr, nullptr);
thread.m_opaqueData = handle;
return handle != nullptr;
#endif
#if defined(WHOA_SYSTEM_MAC) || defined(WHOA_SYSTEM_LINUX)
@ -13,6 +15,7 @@ int32_t SThread::Create(uint32_t (*threadProc)(void*), void* param, SThread& thr
pthread_cond_init(&thread.m_cond, nullptr);
uint32_t v8;
return SCreateThread(threadProc, param, &v8, &thread, nullptr) != 0;
auto handle = SCreateThread(threadProc, param, &v8, &thread, nullptr);
return handle != nullptr;
#endif
}