Lines Matching defs:pthread

7 #include <pthread.h>
17 checkcancel(struct pthread *curthread)
42 testcancel(struct pthread *curthread)
55 _pthread_cancel(pthread_t pthread)
57 struct pthread *curthread = _get_curthread();
58 struct pthread *joinee = NULL;
62 if ((ret = _thr_ref_add(curthread, pthread, /*include dead*/0)) == 0) {
66 THR_THREAD_LOCK(curthread, pthread);
67 THR_SCHED_LOCK(curthread, pthread);
68 if (pthread->flags & THR_FLAGS_EXITING) {
69 THR_SCHED_UNLOCK(curthread, pthread);
70 THR_THREAD_UNLOCK(curthread, pthread);
71 _thr_ref_delete(curthread, pthread);
74 if (((pthread->cancelflags & PTHREAD_CANCEL_DISABLE) != 0) ||
75 (((pthread->cancelflags & THR_AT_CANCEL_POINT) == 0) &&
76 ((pthread->cancelflags & PTHREAD_CANCEL_ASYNCHRONOUS) == 0)))
78 pthread->cancelflags |= THR_CANCELLING;
84 switch (pthread->state) {
87 pthread->cancelflags |= THR_CANCELLING;
97 pthread->cancelflags |= THR_CANCELLING;
98 pthread->critical_yield = 1;
105 pthread->interrupted = 1;
106 pthread->cancelflags |= THR_CANCELLING;
107 kmbx = _thr_setrunnable_unlocked(pthread);
112 joinee = pthread->join_status.thread;
113 pthread->join_status.thread = NULL;
114 pthread->cancelflags |= THR_CANCELLING;
115 kmbx = _thr_setrunnable_unlocked(pthread);
117 (pthread->kseg == joinee->kseg)) {
137 pthread->interrupted = 1;
138 pthread->cancelflags |= THR_CANCEL_NEEDED;
139 kmbx = _thr_setrunnable_unlocked(pthread);
140 pthread->continuation =
150 if ((pthread->cancelflags & THR_AT_CANCEL_POINT) &&
151 (pthread->blocked != 0 ||
152 pthread->attr.flags & PTHREAD_SCOPE_SYSTEM))
153 kse_thr_interrupt(&pthread->tcb->tcb_tmbx,
161 THR_SCHED_UNLOCK(curthread, pthread);
162 THR_THREAD_UNLOCK(curthread, pthread);
163 _thr_ref_delete(curthread, pthread);
182 struct pthread *curthread = _get_curthread();
222 struct pthread *curthread = _get_curthread();
260 struct pthread *curthread = _get_curthread();
268 _thr_cancel_enter(struct pthread *thread)
278 _thr_cancel_leave(struct pthread *thread, int check)
291 struct pthread *curthread = _get_curthread();