wait_group_t * wait_group_new()
returns a new and initialized wait_group_t pointer
int wait_group_done(wait_group_t *wg)
used by a process to indicate it is done, decreasing the active process counter we include a return c...
void wait_group_add(wait_group_t *wg, int count)
incremements the total number of active processes managed by this wait group
void wait_group_recv_signal(wait_group_t *wg)
pthread_mutex_t cond_mutex
void wait_group_listen_signal(wait_group_t *wg)
struct wait_group_t wait_group_t
a simple structure of a pthread mutex and integer counter
void wait_group_send_signal(wait_group_t *wg)
void wait_group_wait(wait_group_t *wg)
used to wait until current active_processes reaches 0, polling every 0.75 seconds will run free on th...