Lines Matching refs:sem
160 aos_status_t aos_sem_new(aos_sem_t *sem, uint32_t count) in aos_sem_new() argument
164 *sem = s; in aos_sem_new()
168 void aos_sem_free(aos_sem_t *sem) in aos_sem_free() argument
170 if (sem == NULL) { in aos_sem_free()
174 sem_destroy(*sem); in aos_sem_free()
175 free(*sem); in aos_sem_free()
178 int aos_sem_wait(aos_sem_t *sem, unsigned int timeout) in aos_sem_wait() argument
183 if (sem == NULL) { in aos_sem_wait()
188 return sem_wait(*sem); in aos_sem_wait()
190 return sem_trywait(*sem); in aos_sem_wait()
204 return sem_timedwait(*sem, &ts); in aos_sem_wait()
207 void aos_sem_signal(aos_sem_t *sem) in aos_sem_signal() argument
209 if (sem == NULL) { in aos_sem_signal()
213 sem_post(*sem); in aos_sem_signal()
216 bool aos_sem_is_valid(aos_sem_t *sem) in aos_sem_is_valid() argument
218 return sem && *sem != NULL; in aos_sem_is_valid()
221 void aos_sem_signal_all(aos_sem_t *sem) in aos_sem_signal_all() argument
223 sem_post(*sem); in aos_sem_signal_all()