123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- #include <stdlib.h>
- #include "pthread.h"
- #include "implement.h"
- int
- pthread_attr_init (pthread_attr_t * attr)
- {
- pthread_attr_t attr_result;
- if (attr == NULL)
- {
-
- return EINVAL;
- }
- attr_result = (pthread_attr_t) malloc (sizeof (*attr_result));
- if (attr_result == NULL)
- {
- return ENOMEM;
- }
- #ifdef _POSIX_THREAD_ATTR_STACKSIZE
-
- attr_result->stacksize = 0;
- #endif
- #ifdef _POSIX_THREAD_ATTR_STACKADDR
-
- attr_result->stackaddr = NULL;
- #endif
- attr_result->detachstate = PTHREAD_CREATE_JOINABLE;
-
- attr_result->param.sched_priority = pte_osThreadGetDefaultPriority();
- attr_result->inheritsched = PTHREAD_EXPLICIT_SCHED;
- attr_result->contentionscope = PTHREAD_SCOPE_SYSTEM;
- attr_result->valid = PTE_ATTR_VALID;
- *attr = attr_result;
- return 0;
- }
|