Fix thread termination issues
This commit is contained in:
parent
2f83dba24c
commit
3740fd295c
4 changed files with 55 additions and 81 deletions
|
|
@ -5,7 +5,10 @@
|
|||
typedef void (*ThreadEntry)(void *context);
|
||||
|
||||
#if defined(LC_WINDOWS) || defined(LC_WINDOWS_PHONE)
|
||||
typedef HANDLE PLT_THREAD;
|
||||
typedef struct _PLT_THREAD {
|
||||
HANDLE handle;
|
||||
int cancelled;
|
||||
} PLT_THREAD;
|
||||
typedef HANDLE PLT_MUTEX;
|
||||
typedef HANDLE PLT_EVENT;
|
||||
#elif defined (LC_POSIX)
|
||||
|
|
@ -28,6 +31,7 @@ void PltUnlockMutex(PLT_MUTEX *mutex);
|
|||
int PltCreateThread(ThreadEntry entry, void* context, PLT_THREAD *thread);
|
||||
void PltCloseThread(PLT_THREAD *thread);
|
||||
void PltInterruptThread(PLT_THREAD *thread);
|
||||
int PltIsThreadInterrupted(PLT_THREAD *thread);
|
||||
void PltJoinThread(PLT_THREAD *thread);
|
||||
|
||||
int PltCreateEvent(PLT_EVENT *event);
|
||||
|
|
@ -39,4 +43,4 @@ int PltWaitForEvent(PLT_EVENT *event);
|
|||
#define PLT_WAIT_SUCCESS 0
|
||||
#define PLT_WAIT_INTERRUPTED 1
|
||||
|
||||
void PltSleepMs(int ms);
|
||||
int PltSleepMs(int ms);
|
||||
Loading…
Add table
Add a link
Reference in a new issue