Revision 8378a78b src/urt_node.c
src/urt_node.c | ||
---|---|---|
70 | 70 |
} |
71 | 71 |
|
72 | 72 |
|
73 |
while (/*!*/urtThreadShouldTerminate()) //TODO: uncomment
|
|
73 |
while (urtThreadShouldTerminate())
|
|
74 | 74 |
{ |
75 | 75 |
urt_osEventMask_t temp = urtEventWait(mask, URT_EVENT_WAIT_ONE, URT_DELAY_INFINITE); |
76 | 76 |
if (temp == urtCoreGetEventMask()) |
... | ... | |
92 | 92 |
} |
93 | 93 |
urtEventUnregister(urtCoreGetEvtSource(), &((urt_node_t*)arg)->listener); |
94 | 94 |
urt_osThread_t* threadToTerminate = ((urt_node_t*)arg)->thread; |
95 |
//urt_osThread_t* threadToTerminate = urtThreadGetSelf(); |
|
95 | 96 |
while (threadToTerminate->children != NULL || threadToTerminate->sibling != NULL) |
96 | 97 |
{ |
97 | 98 |
if (threadToTerminate->children != NULL) |
... | ... | |
99 | 100 |
if(threadToTerminate->sibling != NULL) |
100 | 101 |
urtThreadTerminate(threadToTerminate->sibling, URT_THREAD_TERMINATE_REQUEST); |
101 | 102 |
} |
102 |
urtThreadTerminate(threadToTerminate, URT_THREAD_TERMINATE_REQUEST); |
|
103 | 103 |
|
104 | 104 |
urt_osThread_t* threadToJoin = ((urt_node_t*)arg)->thread; |
105 | 105 |
while (threadToJoin->children != NULL || threadToJoin->sibling != NULL) |
... | ... | |
109 | 109 |
if(threadToJoin->sibling != NULL) |
110 | 110 |
urtThreadJoin(threadToJoin->sibling); |
111 | 111 |
} |
112 |
//urtThreadJoin(threadToJoin); //TODO: uncomment |
|
113 | 112 |
|
113 |
urtThreadExit(); |
|
114 | 114 |
return; |
115 | 115 |
} |
116 | 116 |
|
Also available in: Unified diff