trunk/src/osd/windows/winwork.c
| r32226 | r32227 | |
| 280 | 280 | worker_thread_process(queue, thread); |
| 281 | 281 | |
| 282 | 282 | // if we're a high frequency queue, spin until done |
| 283 | | if (queue->flags & WORK_QUEUE_FLAG_HIGH_FREQ) |
| 283 | if (queue->flags & WORK_QUEUE_FLAG_HIGH_FREQ && queue->items != 0) |
| 284 | 284 | { |
| 285 | 285 | osd_ticks_t stopspin = osd_ticks() + timeout; |
| 286 | 286 | |
| r32226 | r32227 | |
| 315 | 315 | void osd_work_queue_free(osd_work_queue *queue) |
| 316 | 316 | { |
| 317 | 317 | // if we have threads, clean them up |
| 318 | | if (queue->threads > 0 && queue->thread != NULL) |
| 318 | if (queue->thread != NULL) |
| 319 | 319 | { |
| 320 | 320 | int threadnum; |
| 321 | 321 | |
| r32226 | r32227 | |
| 624 | 624 | worker_thread_process(queue, thread); |
| 625 | 625 | |
| 626 | 626 | // if we're a high frequency queue, spin for a while before giving up |
| 627 | | if (queue->flags & WORK_QUEUE_FLAG_HIGH_FREQ) |
| 627 | if (queue->flags & WORK_QUEUE_FLAG_HIGH_FREQ && queue->list == NULL) |
| 628 | 628 | { |
| 629 | 629 | // spin for a while looking for more work |
| 630 | 630 | begin_timing(thread->spintime); |