195 |
void *(*start_routine)(void *), void *arg); |
void *(*start_routine)(void *), void *arg); |
196 |
|
|
197 |
|
|
198 |
/* Allocate a kernel thread for THREAD; it must not be placed on the |
/* Allocate a kernel thread (and any miscellaneous system dependent |
199 |
run queue. */ |
resources) for THREAD; it must not be placed on the run queue. */ |
200 |
extern int __pthread_thread_alloc (struct __pthread *thread); |
extern int __pthread_thread_alloc (struct __pthread *thread); |
201 |
|
|
202 |
|
/* Deallocate any kernel resources associated with THREAD except don't |
203 |
|
halt the thread itself. On return, the thread will be marked as |
204 |
|
dead and __pthread_halt will be called. */ |
205 |
|
extern void __pthread_thread_dealloc (struct __pthread *thread); |
206 |
|
|
207 |
/* Start THREAD making it eligible to run. */ |
/* Start THREAD making it eligible to run. */ |
208 |
extern int __pthread_thread_start (struct __pthread *thread); |
extern int __pthread_thread_start (struct __pthread *thread); |
209 |
|
|
210 |
/* Stop thread thread and deallocate any kernel resources associated |
/* Stop the kernel thread associated with THREAD. If NEED_DEALLOC is |
211 |
with THREAD. */ |
true, the function must call __pthread_dealloc on THREAD. |
212 |
extern void __pthread_thread_halt (struct __pthread *thread); |
|
213 |
|
NB: The thread executing this function may be the thread which is |
214 |
|
being halted, thus the last action should be halting the thread |
215 |
|
itself. */ |
216 |
|
extern void __pthread_thread_halt (struct __pthread *thread, |
217 |
|
int need_dealloc); |
218 |
|
|
219 |
|
|
220 |
/* Block THREAD. */ |
/* Block THREAD. */ |