fix joinable semaphore of pthread not clear to NULL when detach.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1337 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
parent
adc63f2c0a
commit
e9148ab6c7
@ -180,10 +180,11 @@ int pthread_detach(pthread_t thread)
|
|||||||
rt_enter_critical();
|
rt_enter_critical();
|
||||||
/* change to detach state */
|
/* change to detach state */
|
||||||
ptd->attr.detachstate = PTHREAD_CREATE_DETACHED;
|
ptd->attr.detachstate = PTHREAD_CREATE_DETACHED;
|
||||||
rt_exit_critical();
|
|
||||||
|
|
||||||
/* detach joinable semaphore */
|
/* detach joinable semaphore */
|
||||||
rt_sem_delete(ptd->joinable_sem);
|
rt_sem_delete(ptd->joinable_sem);
|
||||||
|
ptd->joinable_sem = RT_NULL;
|
||||||
|
rt_exit_critical();
|
||||||
}
|
}
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -129,7 +129,7 @@ typedef struct pthread_barrier pthread_barrier_t;
|
|||||||
int pthread_attr_destroy(pthread_attr_t *attr);
|
int pthread_attr_destroy(pthread_attr_t *attr);
|
||||||
int pthread_attr_init(pthread_attr_t *attr);
|
int pthread_attr_init(pthread_attr_t *attr);
|
||||||
|
|
||||||
int pthread_init (void);
|
int pthread_system_init(void);
|
||||||
int pthread_create (pthread_t *tid, const pthread_attr_t *attr,
|
int pthread_create (pthread_t *tid, const pthread_attr_t *attr,
|
||||||
void *(*start) (void *), void *arg);
|
void *(*start) (void *), void *arg);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user