142 |
// fprintf(stderr, "lscp_thread_cancel: pThread=%p.\n", pThread); |
// fprintf(stderr, "lscp_thread_cancel: pThread=%p.\n", pThread); |
143 |
|
|
144 |
#if defined(WIN32) |
#if defined(WIN32) |
145 |
if (pThread->hThread && TerminateThread(pThread->hThread, 0)) { |
if (pThread->hThread) { // Should we TerminateThread(pThread->hThread, 0) ? |
146 |
pThread->hThread = NULL; |
/* pThread->hThread = NULL; */ |
147 |
ret = LSCP_OK; |
ret = LSCP_OK; |
148 |
} |
} |
149 |
#else |
#else |
159 |
|
|
160 |
lscp_status_t lscp_thread_destroy ( lscp_thread_t *pThread ) |
lscp_status_t lscp_thread_destroy ( lscp_thread_t *pThread ) |
161 |
{ |
{ |
162 |
lscp_status_t ret = lscp_thread_join(pThread); |
lscp_status_t ret = lscp_thread_cancel(pThread); |
163 |
|
|
164 |
|
if (ret == LSCP_OK) |
165 |
|
ret = lscp_thread_join(pThread); |
166 |
|
|
167 |
// fprintf(stderr, "lscp_thread_destroy: pThread=%p.\n", pThread); |
// fprintf(stderr, "lscp_thread_destroy: pThread=%p.\n", pThread); |
168 |
|
|
169 |
if (ret == LSCP_OK) |
if (ret == LSCP_OK) |