_sem_wait
else if ((e = _sem_wait(&thread->donesem, 0, NULL,
int _sem_wait(sem_t, int, const struct timespec *, int *);
error = _sem_wait(sem, 1, NULL, &self->delayed_cancel);
error = _sem_wait(sem, 1, abstime, &self->delayed_cancel);
r = _sem_wait(sem, 1, NULL, &self->delayed_cancel);
r = _sem_wait(sem, 1, abstime, &self->delayed_cancel);