|
|
| version 1.15.2.1, 2012/08/22 10:33:45 | version 1.16, 2012/08/23 02:33:12 |
|---|---|
| Line 215 schedEnd(sched_root_task_t ** __restrict root) | Line 215 schedEnd(sched_root_task_t ** __restrict root) |
| sched_task_t *task, *tmp; | sched_task_t *task, *tmp; |
| #ifdef HAVE_LIBPTHREAD | #ifdef HAVE_LIBPTHREAD |
| register int i; | register int i; |
| pthread_t tid; | |
| #endif | #endif |
| if (!root || !*root) | if (!root || !*root) |
| Line 247 schedEnd(sched_root_task_t ** __restrict root) | Line 246 schedEnd(sched_root_task_t ** __restrict root) |
| schedCancel(task); | schedCancel(task); |
| TAILQ_FOREACH_SAFE(task, &(*root)->root_ready, task_node, tmp) | TAILQ_FOREACH_SAFE(task, &(*root)->root_ready, task_node, tmp) |
| schedCancel(task); | schedCancel(task); |
| TAILQ_FOREACH_SAFE(task, &(*root)->root_thread, task_node, tmp) { | TAILQ_FOREACH_SAFE(task, &(*root)->root_thread, task_node, tmp) |
| tid = (pthread_t) TASK_VAL(task); | |
| schedCancel(task); | schedCancel(task); |
| #ifdef HAVE_LIBPTHREAD | |
| if (TASK_FLAG(task) == PTHREAD_CREATE_JOINABLE) | |
| pthread_join(tid, NULL); | |
| #endif | |
| } | |
| TAILQ_FOREACH_SAFE(task, &(*root)->root_task, task_node, tmp) | TAILQ_FOREACH_SAFE(task, &(*root)->root_task, task_node, tmp) |
| schedCancel(task); | schedCancel(task); |